From: Jordan Justen Date: Wed, 19 Oct 2016 17:25:21 +0000 (-0700) Subject: i965/cs: Use udiv/umod for local IDs X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1fa000a33b010436ac3bf4b3c8da2974d3788382;p=mesa.git i965/cs: Use udiv/umod for local IDs This allows for more optimizations relating to power-of-two divisions. Signed-off-by: Jordan Justen Reviewed-by: Ian Romanick --- diff --git a/src/mesa/drivers/dri/i965/brw_nir_intrinsics.c b/src/mesa/drivers/dri/i965/brw_nir_intrinsics.c index 059d14d0e4f..9ae161f53df 100644 --- a/src/mesa/drivers/dri/i965/brw_nir_intrinsics.c +++ b/src/mesa/drivers/dri/i965/brw_nir_intrinsics.c @@ -116,7 +116,7 @@ lower_cs_intrinsics_convert_block(struct lower_intrinsics_state *state, uvec3.u32[2] = size[2]; nir_ssa_def *mod_val = nir_build_imm(b, 3, 32, uvec3); - sysval = nir_imod(b, nir_idiv(b, local_index, div_val), mod_val); + sysval = nir_umod(b, nir_udiv(b, local_index, div_val), mod_val); break; }