nir/lower-atomics-to-ssbo: fix num_components
authorRob Clark <robdclark@gmail.com>
Mon, 15 May 2017 19:38:39 +0000 (15:38 -0400)
committerRob Clark <robdclark@gmail.com>
Tue, 23 May 2017 16:26:34 +0000 (12:26 -0400)
Fixes some piglits like arb_shader_atomic_counters-active-counters

Signed-off-by: Rob Clark <robdclark@gmail.com>
src/compiler/nir/nir_lower_atomics_to_ssbo.c

index 27fe50bbc22d573b61fd951c9e933bcd8d7b2732..23583fde373a7fb8618f5e4a0a67d4107c6426bb 100644 (file)
@@ -155,6 +155,11 @@ lower_instr(nir_intrinsic_instr *instr, unsigned ssbo_offset, nir_builder *b)
       nir_ssa_def_rewrite_uses(&instr->dest.ssa, nir_src_for_ssa(&new_instr->dest.ssa));
    }
 
+   /* we could be replacing an intrinsic with fixed # of dest num_components
+    * with one that has variable number.  So best to take this from the dest:
+    */
+   new_instr->num_components = instr->dest.ssa.num_components;
+
    return true;
 }