[Mesa-dev] [PATCH] ac/nir: don't put lod into args if it's zero.
Timothy Arceri
tarceri at itsqueeze.com
Wed Mar 7 03:29:41 UTC 2018
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
On 07/03/18 14:26, Dave Airlie wrote:
> From: Dave Airlie <airlied at redhat.com>
>
> If it's zero but put it in args we still end up consuming a
> register for it.
>
> This fixes some spilling in the NIR paths in Dirt Rally that
> isn't seen with TGSI.
>
> Signed-off-by: Dave Airlie <airlied at redhat.com>
> ---
> src/amd/common/ac_nir_to_llvm.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
> index f808dc89490..432b88a59b0 100644
> --- a/src/amd/common/ac_nir_to_llvm.c
> +++ b/src/amd/common/ac_nir_to_llvm.c
> @@ -5094,8 +5094,7 @@ static void visit_tex(struct ac_nir_context *ctx, nir_tex_instr *instr)
> }
>
> /* Pack LOD */
> - if (lod && ((instr->op == nir_texop_txl && !lod_is_zero) ||
> - instr->op == nir_texop_txf)) {
> + if (lod && ((instr->op == nir_texop_txl || instr->op == nir_texop_txf) && !lod_is_zero)) {
> address[count++] = lod;
> } else if (instr->op == nir_texop_txf_ms && sample_index) {
> address[count++] = sample_index;
>
More information about the mesa-dev
mailing list