v3d: Fix vir_is_raw_mov() for input unpacks.
authorEric Anholt <eric@anholt.net>
Tue, 26 Feb 2019 02:01:08 +0000 (18:01 -0800)
committerEric Anholt <eric@anholt.net>
Tue, 26 Feb 2019 05:26:24 +0000 (21:26 -0800)
There are no users at the moment, but I wanted to start using this in
register spilling.

src/broadcom/compiler/vir.c

index 3b0274450e994955c28be6cc372e51977a409139..2f670fc9024e6682f27149f528b479c0e8b0bb9c 100644 (file)
@@ -146,6 +146,13 @@ vir_is_raw_mov(struct qinst *inst)
                 return false;
         }
 
+        if (inst->qpu.alu.add.a_unpack != V3D_QPU_UNPACK_NONE ||
+            inst->qpu.alu.add.b_unpack != V3D_QPU_UNPACK_NONE ||
+            inst->qpu.alu.mul.a_unpack != V3D_QPU_UNPACK_NONE ||
+            inst->qpu.alu.mul.b_unpack != V3D_QPU_UNPACK_NONE) {
+                return false;
+        }
+
         if (inst->qpu.flags.ac != V3D_QPU_COND_NONE ||
             inst->qpu.flags.mc != V3D_QPU_COND_NONE)
                 return false;