From dc8d82516b8ac6d4140d4861d7f8537cb22c3845 Mon Sep 17 00:00:00 2001 From: Pierre-Eric Pelloux-Prayer Date: Tue, 5 Jul 2022 13:36:50 +0200 Subject: [PATCH] ac/llvm: handle opaque pointers in visit_store_output MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Outputs are always f32 or f16. Reviewed-by: Mihai Preda Reviewed-by: Marek Olšák Part-of: --- src/amd/llvm/ac_nir_to_llvm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/amd/llvm/ac_nir_to_llvm.c b/src/amd/llvm/ac_nir_to_llvm.c index bd974d29816..c91362f8e1b 100644 --- a/src/amd/llvm/ac_nir_to_llvm.c +++ b/src/amd/llvm/ac_nir_to_llvm.c @@ -2402,7 +2402,7 @@ static void visit_store_output(struct ac_nir_context *ctx, nir_intrinsic_instr * LLVMValueRef value = ac_llvm_extract_elem(&ctx->ac, src, chan - component); LLVMValueRef output_addr = ctx->abi->outputs[base * 4 + chan]; - if (LLVMGetElementType(LLVMTypeOf(output_addr)) == ctx->ac.f32 && + if (!ctx->abi->is_16bit[base * 4 + chan] && LLVMTypeOf(value) == ctx->ac.f16) { LLVMValueRef output, index;