diff options
author | Eric Anholt <[email protected]> | 2015-01-12 09:14:41 +1300 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2015-01-15 22:19:25 +1300 |
commit | 0289a2620152528555cf9d37edf1616de47fea06 (patch) | |
tree | f7bf276361b31a952da9fd9aa8302719520f4bc6 | |
parent | 772c47aefe96694c5f3fa354bd6792d137824700 (diff) |
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).
-rw-r--r-- | src/gallium/drivers/vc4/vc4_opt_small_immediates.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/vc4/vc4_opt_small_immediates.c b/src/gallium/drivers/vc4/vc4_opt_small_immediates.c index 8b98ce3f182..74304b99888 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) |