summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2020-03-31 12:55:31 -0400
committerMarge Bot <[email protected]>2020-04-01 02:25:05 +0000
commit2292e2aa10a3ef77ef4d195c09aad334a18bd080 (patch)
tree55e70014b0a3ea850ba2c9451795b6d86bbc26d1 /src
parentb033189dd7d0e2c403ed17b5ec5e76b0c93dbb36 (diff)
pan/bi: Fix writes_component for VECTOR
I'm not convinced this is the best way and it's sort of a hack, but it fixes RA for st_vary. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4396>
Diffstat (limited to 'src')
-rw-r--r--src/panfrost/bifrost/bir.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/panfrost/bifrost/bir.c b/src/panfrost/bifrost/bir.c
index 8256c45a780..b42db852ce4 100644
--- a/src/panfrost/bifrost/bir.c
+++ b/src/panfrost/bifrost/bir.c
@@ -148,6 +148,10 @@ bi_get_immediate(bi_instruction *ins, unsigned index)
bool
bi_writes_component(bi_instruction *ins, unsigned comp)
{
+ /* TODO: Do we want something less coarse? */
+ if (bi_class_props[ins->type] & BI_VECTOR)
+ return true;
+
nir_alu_type T = ins->dest_type;
unsigned size = nir_alu_type_get_type_size(T);
return ins->writemask & (0xF << (comp * (size / 8)));