diff --git a/.pick_status.json b/.pick_status.json index 8bc0e6db7d7..598b14c9d41 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -3199,7 +3199,7 @@ "description": "gallivm/nir: fix const loading on big endian systems", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "44a6b0107b37ad9644d3435cf6d2d29b6779654f" }, diff --git a/src/gallium/auxiliary/gallivm/lp_bld_nir.c b/src/gallium/auxiliary/gallivm/lp_bld_nir.c index 218d46036e9..f7951a086c8 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_nir.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_nir.c @@ -862,7 +862,7 @@ static void visit_load_const(struct lp_build_nir_context *bld_base, LLVMValueRef result[NIR_MAX_VEC_COMPONENTS]; struct lp_build_context *int_bld = get_int_bld(bld_base, true, instr->def.bit_size); for (unsigned i = 0; i < instr->def.num_components; i++) - result[i] = lp_build_const_int_vec(bld_base->base.gallivm, int_bld->type, instr->value[i].u64); + result[i] = lp_build_const_int_vec(bld_base->base.gallivm, int_bld->type, instr->def.bit_size == 32 ? instr->value[i].u32 : instr->value[i].u64); assign_ssa_dest(bld_base, &instr->def, result); }