pan/midgard: Extend IS_VEC4_ONLY to arguments
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Sun, 22 Dec 2019 19:55:46 +0000 (14:55 -0500)
committerAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Tue, 24 Dec 2019 23:46:22 +0000 (23:46 +0000)
I think both need to be aligned at least for ld_cubemap_coords.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
src/panfrost/midgard/midgard_ra.c

index 80d3d5488ecaaea533fc052e3d2dae0604b40905..7d116e176bc985bf1703f29cc328391f8c8ce3fa 100644 (file)
@@ -506,8 +506,12 @@ allocate_registers(compiler_context *ctx, bool *spilled)
                         set_class(l->class, ins->src[1], REG_CLASS_LDST);
                         set_class(l->class, ins->src[2], REG_CLASS_LDST);
 
-                        if (OP_IS_VEC4_ONLY(ins->load_store.op))
+                        if (OP_IS_VEC4_ONLY(ins->load_store.op)) {
                                 lcra_restrict_range(l, ins->dest, 16);
+                                lcra_restrict_range(l, ins->src[0], 16);
+                                lcra_restrict_range(l, ins->src[1], 16);
+                                lcra_restrict_range(l, ins->src[2], 16);
+                        }
                 } else if (ins->type == TAG_TEXTURE_4) {
                         set_class(l->class, ins->dest, REG_CLASS_TEXW);
                         set_class(l->class, ins->src[0], REG_CLASS_TEXR);