summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2016-11-21 23:29:04 -0800
committerEric Anholt <[email protected]>2016-11-22 16:46:03 -0800
commit1f0ba902f0ef87e182e50b7e19a406b0936f5293 (patch)
treed8e52b10b09db54871966ec8fd19f55442d2e8bd
parent9728887e7f1e19402b4b7463b44153b3a6e266c0 (diff)
vc4: Re-add R4 to the "any" register class.
I screwed this up in fdad4d24024ab7bc9b6b9cb6288f8b76ccac0d89 which was supposed to be making this code more maintainable. What's amazing is multithreaded FS showed the wins it did despite this bug. shader-db results: total instructions in shared programs: 103535 -> 100548 (-2.89%) instructions in affected programs: 83794 -> 80807 (-3.56%)
-rw-r--r--src/gallium/drivers/vc4/vc4_register_allocate.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/vc4/vc4_register_allocate.c b/src/gallium/drivers/vc4/vc4_register_allocate.c
index 247467b7a76..2992a6be2f2 100644
--- a/src/gallium/drivers/vc4/vc4_register_allocate.c
+++ b/src/gallium/drivers/vc4/vc4_register_allocate.c
@@ -141,6 +141,8 @@ vc4_alloc_reg_set(struct vc4_context *vc4)
for (int i = 0; i < 2; i++) {
ra_class_add_reg(vc4->regs, vc4->reg_class_r4_or_a[i],
ACC_INDEX + 4);
+ ra_class_add_reg(vc4->regs, vc4->reg_class_any[i],
+ ACC_INDEX + 4);
}
/* A/B */