Mesa (master): i965/cs: Use udiv/umod for local IDs

Jordan Justen jljusten at kemper.freedesktop.org
Wed Oct 19 23:58:12 UTC 2016


Module: Mesa
Branch: master
Commit: 1fa000a33b010436ac3bf4b3c8da2974d3788382
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1fa000a33b010436ac3bf4b3c8da2974d3788382

Author: Jordan Justen <jordan.l.justen at intel.com>
Date:   Wed Oct 19 10:25:21 2016 -0700

i965/cs: Use udiv/umod for local IDs

This allows for more optimizations relating to power-of-two divisions.

Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

---

 src/mesa/drivers/dri/i965/brw_nir_intrinsics.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_nir_intrinsics.c b/src/mesa/drivers/dri/i965/brw_nir_intrinsics.c
index 059d14d..9ae161f 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;
       }
 




More information about the mesa-commit mailing list