We weren't propagating the array info for cases where result of atomic
is array/reg. This can happen, for example, if result is part of a phi
web lowered to regs.
Fixes dEQP-GLES31.functional.ssbo.atomic.compswap.*
Signed-off-by: Rob Clark <robdclark@gmail.com>
mov->flags |= IR3_INSTR_SY;
+ if (atomic->regs[0]->flags & IR3_REG_ARRAY) {
+ mov->regs[0]->flags |= IR3_REG_ARRAY;
+ mov->regs[0]->array = atomic->regs[0]->array;
+ }
+
/* it will have already been appended to the end of the block, which
* isn't where we want it, so fix-up the location:
*/