nir/system_values: Use the bit size from the load_deref

This isn't a great solution for bit-sizes but we don't have a
particularly convenient way to get a bit size from the system value enum
and this keeps the lowering pass from changing it.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Jason Ekstrand 2018-10-19 10:51:47 -05:00
parent a3b4cb3458
commit 5bfce5fcc2
1 changed files with 1 additions and 0 deletions

View File

@ -203,6 +203,7 @@ convert_block(nir_block *block, nir_builder *b)
nir_intrinsic_op sysval_op =
nir_intrinsic_from_system_value(var->data.location);
sysval = nir_load_system_value(b, sysval_op, 0);
sysval->bit_size = load_deref->dest.ssa.bit_size;
}
nir_ssa_def_rewrite_uses(&load_deref->dest.ssa, nir_src_for_ssa(sysval));