i965/vec4: Use nir_intrinsic_base in the load_uniform implementation
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 19 Apr 2016 01:51:50 +0000 (18:51 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Wed, 20 Apr 2016 16:15:01 +0000 (09:15 -0700)
We shouldn't be reading the const_index directly

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94998
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95001

src/mesa/drivers/dri/i965/brw_vec4_nir.cpp

index e199d9697dc443c3e8bcd9c208f96f815b0ab106..b5c23c995881ee4f914ed34fc40e6c9fca4f66fe 100644 (file)
@@ -691,7 +691,7 @@ vec4_visitor::nir_emit_intrinsic(nir_intrinsic_instr *instr)
 
       dest = get_nir_dest(instr->dest);
 
-      src = src_reg(dst_reg(UNIFORM, instr->const_index[0] / 16));
+      src = src_reg(dst_reg(UNIFORM, nir_intrinsic_base(instr) / 16));
       src.type = dest.type;
 
       /* Uniforms don't actually have to be vec4 aligned.  In the case that