From: Samuel Pitoiset Date: Thu, 20 Oct 2022 04:40:20 +0000 (+0000) Subject: radv/llvm: do not set COMPR for exports on GFX11 X-Git-Tag: upstream/22.3.5~1234 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fee5e379f4cf6539b59e25c09f92d5d83d2eb8f3;p=platform%2Fupstream%2Fmesa.git radv/llvm: do not set COMPR for exports on GFX11 Use 0x3 channel mask instead. Signed-off-by: Samuel Pitoiset Reviewed-by: Rhys Perry Part-of: --- diff --git a/src/amd/vulkan/radv_nir_to_llvm.c b/src/amd/vulkan/radv_nir_to_llvm.c index 47ae712..1cd57a1 100644 --- a/src/amd/vulkan/radv_nir_to_llvm.c +++ b/src/amd/vulkan/radv_nir_to_llvm.c @@ -668,7 +668,6 @@ si_llvm_init_export_args(struct radv_shader_context *ctx, LLVMValueRef *values, packed = packf(&ctx->ac, pack_args); args->out[chan] = ac_to_float(&ctx->ac, packed); } - args->compr = 1; /* COMPR flag */ } /* Pack i16/u16. */ @@ -681,8 +680,16 @@ si_llvm_init_export_args(struct radv_shader_context *ctx, LLVMValueRef *values, packed = packi(&ctx->ac, pack_args, is_int8 ? 8 : is_int10 ? 10 : 16, chan == 1); args->out[chan] = ac_to_float(&ctx->ac, packed); } - args->compr = 1; /* COMPR flag */ } + + if (packf || packi) { + if (ctx->options->gfx_level >= GFX11) { + args->enabled_channels = 0x3; + } else { + args->compr = 1; /* COMPR flag */ + } + } + return; }