aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2020-04-28 17:44:39 -0400
committerMarge Bot <[email protected]>2020-04-29 15:35:54 +0000
commitffa314eab32b94956db1e0cd54d833333b050635 (patch)
treebe5509f79e6f8f31c937cafe472a63cb5e6a8a64
parentc571d31b8b268aa22ebeb134589150d08db892b2 (diff)
pan/mdg: Replicate 16-bit swizzles
We don't support vec8 quite yet anyway, this fixes dot products. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4793>
-rw-r--r--src/panfrost/midgard/midgard_emit.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/panfrost/midgard/midgard_emit.c b/src/panfrost/midgard/midgard_emit.c
index 6f6a395b430..98844169fae 100644
--- a/src/panfrost/midgard/midgard_emit.c
+++ b/src/panfrost/midgard/midgard_emit.c
@@ -242,6 +242,12 @@ mir_pack_swizzle_alu(midgard_instruction *ins)
}
src[i].rep_high = upper;
+
+ /* Replicate for now.. should really pick a side for
+ * dot products */
+
+ if (ins->alu.reg_mode == midgard_reg_mode_16)
+ src[i].rep_low = true;
}
src[i].swizzle = packed;