aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2019-12-12 12:42:25 +1000
committerDave Airlie <[email protected]>2019-12-27 13:26:33 +1000
commit0a73eafdbeb68bafa8f0d26da4490358420fe40c (patch)
treea2e98a5066f026d36d87728921d93e2f20a4ca43 /src
parentb16fd4d9e9ff545e4352394411f79b518e9c416a (diff)
gallivm: handle non-32 bit undefined
other sized undefs caused llvm asserts Acked-by: Roland Scheidegger <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/gallium/auxiliary/gallivm/lp_bld_nir.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_nir.c b/src/gallium/auxiliary/gallivm/lp_bld_nir.c
index a150473b2a6..f2fb76aeba2 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_nir.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_nir.c
@@ -1615,8 +1615,9 @@ static void visit_ssa_undef(struct lp_build_nir_context *bld_base,
{
unsigned num_components = instr->def.num_components;
LLVMValueRef undef[NIR_MAX_VEC_COMPONENTS];
+ struct lp_build_context *undef_bld = get_int_bld(bld_base, true, instr->def.bit_size);
for (unsigned i = 0; i < num_components; i++)
- undef[i] = LLVMGetUndef(bld_base->base.vec_type);
+ undef[i] = LLVMGetUndef(undef_bld->vec_type);
assign_ssa_dest(bld_base, &instr->def, undef);
}