From c3c9e28131ee9036718f033d141d1962884846fc Mon Sep 17 00:00:00 2001 From: Konstantin Seurer Date: Wed, 7 Jun 2023 22:23:52 +0200 Subject: [PATCH] gallivm: Cast read_first_invocation source to an int cc: mesa-stable Reviewed-by: Dave Airlie Part-of: --- src/gallium/auxiliary/gallivm/lp_bld_nir.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_nir.c b/src/gallium/auxiliary/gallivm/lp_bld_nir.c index e10ea32..7566283 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_nir.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_nir.c @@ -2192,12 +2192,13 @@ visit_intrinsic(struct lp_build_nir_context *bld_base, #endif case nir_intrinsic_read_invocation: case nir_intrinsic_read_first_invocation: { - LLVMValueRef src1 = NULL; LLVMValueRef src0 = get_src(bld_base, instr->src[0]); - if (instr->intrinsic == nir_intrinsic_read_invocation) { + src0 = cast_type(bld_base, src0, nir_type_int, nir_src_bit_size(instr->src[0])); + + LLVMValueRef src1 = NULL; + if (instr->intrinsic == nir_intrinsic_read_invocation) src1 = cast_type(bld_base, get_src(bld_base, instr->src[1]), nir_type_int, 32); - src0 = cast_type(bld_base, src0, nir_type_int, nir_src_bit_size(instr->src[0])); - } + bld_base->read_invocation(bld_base, src0, nir_src_bit_size(instr->src[0]), src1, result); break; } -- 2.7.4