Mesa (master): vc4: No turning unpack arguments into small immediates.

Eric Anholt anholt at kemper.freedesktop.org
Thu Jan 15 09:25:08 UTC 2015


Module: Mesa
Branch: master
Commit: 0289a2620152528555cf9d37edf1616de47fea06
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0289a2620152528555cf9d37edf1616de47fea06

Author: Eric Anholt <eric at anholt.net>
Date:   Mon Jan 12 09:14:41 2015 +1300

vc4: No turning unpack arguments into small immediates.

Since unpack only happens on things read from the A register file, we have
to leave them as something that can be allocated to A (temp or uniform).

---

 src/gallium/drivers/vc4/vc4_opt_small_immediates.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/gallium/drivers/vc4/vc4_opt_small_immediates.c b/src/gallium/drivers/vc4/vc4_opt_small_immediates.c
index 8b98ce3..74304b9 100644
--- a/src/gallium/drivers/vc4/vc4_opt_small_immediates.c
+++ b/src/gallium/drivers/vc4/vc4_opt_small_immediates.c
@@ -79,6 +79,9 @@ qir_opt_small_immediates(struct vc4_compile *c)
                                 continue;
                         }
 
+                        if (qir_src_needs_a_file(inst))
+                                continue;
+
                         uint32_t imm = c->uniform_data[src.index];
                         uint32_t small_imm = qpu_encode_small_immediate(imm);
                         if (small_imm == ~0)




More information about the mesa-commit mailing list