pan/bi: Use 8-bit shifts

Logically, it doesn't matter, but we want the IR to accurately reflect
the hardware behaviour.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6749>
diff --git a/src/panfrost/bifrost/bifrost_compile.c b/src/panfrost/bifrost/bifrost_compile.c
index 5519387..afe2c00 100644
--- a/src/panfrost/bifrost/bifrost_compile.c
+++ b/src/panfrost/bifrost/bifrost_compile.c
@@ -831,13 +831,13 @@
                 alu.src[1] = BIR_INDEX_ZERO;
                 /* zero shift */
                 alu.src[2] = BIR_INDEX_ZERO;
-                alu.src_types[2] = alu.src_types[1];
+                alu.src_types[2] = nir_type_uint8;
                 break;
         case nir_op_ishl:
                 alu.op.bitwise = BI_BITWISE_OR;
                 /* move src1 to src2 and replace with zero. underlying op is (src0 << src2) | src1 */
                 alu.src[2] = alu.src[1];
-                alu.src_types[2] = alu.src_types[1];
+                alu.src_types[2] = nir_type_uint8;
                 alu.src[1] = BIR_INDEX_ZERO;
                 break;
         case nir_op_imul:
@@ -881,19 +881,19 @@
                 alu.op.bitwise = BI_BITWISE_AND;
                 /* zero shift */
                 alu.src[2] = BIR_INDEX_ZERO;
-                alu.src_types[2] = alu.src_types[1];
+                alu.src_types[2] = nir_type_uint8;
                 break;
         case nir_op_ior:
                 alu.op.bitwise = BI_BITWISE_OR;
                 /* zero shift */
                 alu.src[2] = BIR_INDEX_ZERO;
-                alu.src_types[2] = alu.src_types[1];
+                alu.src_types[2] = nir_type_uint8;
                 break;
         case nir_op_ixor:
                 alu.op.bitwise = BI_BITWISE_XOR;
                 /* zero shift */
                 alu.src[2] = BIR_INDEX_ZERO;
-                alu.src_types[2] = alu.src_types[1];
+                alu.src_types[2] = nir_type_uint8;
                 break;
         case nir_op_f2i32:
                 alu.roundmode = BIFROST_RTZ;
diff --git a/src/panfrost/bifrost/test/bi_test_pack.c b/src/panfrost/bifrost/test/bi_test_pack.c
index f41f148..865f71f 100644
--- a/src/panfrost/bifrost/test/bi_test_pack.c
+++ b/src/panfrost/bifrost/test/bi_test_pack.c
@@ -542,6 +542,7 @@
 
         /* TODO: shifts */
         ins.src[2] = BIR_INDEX_ZERO;
+        ins.src_types[2] = nir_type_uint8;
 
         for (unsigned op = BI_BITWISE_AND; op <= BI_BITWISE_XOR; ++op) {
                 ins.op.bitwise = op;