summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/vc4/vc4_register_allocate.c
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2016-11-15 12:40:36 -0800
committerEric Anholt <[email protected]>2016-11-29 08:38:59 -0800
commit314f0c57e4c00b0a5cb544fa43e356c1069acd8f (patch)
tree618d894f3fe731eb3b51efadaa59f01f4b71eeb6 /src/gallium/drivers/vc4/vc4_register_allocate.c
parent51087327f2ba929739719b2ae243d8c69d31346f (diff)
vc4: Refactor qir_get_op_nsrc(enum qop) to qir_get_nsrc(struct qinst *).
Every caller was dereffing the qinst, and this will let us make the number of sources vary depending on the destination of the qinst so that we can have general ALU ops that store to tex_[strb] and get an implicit uniform.
Diffstat (limited to 'src/gallium/drivers/vc4/vc4_register_allocate.c')
-rw-r--r--src/gallium/drivers/vc4/vc4_register_allocate.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/vc4/vc4_register_allocate.c b/src/gallium/drivers/vc4/vc4_register_allocate.c
index 2992a6be2f2..e48b8ee5992 100644
--- a/src/gallium/drivers/vc4/vc4_register_allocate.c
+++ b/src/gallium/drivers/vc4/vc4_register_allocate.c
@@ -306,7 +306,7 @@ vc4_register_allocate(struct vc4_context *vc4, struct vc4_compile *c)
* can only be done from regfile A, while float unpacks can be
* either A or R4.
*/
- for (int i = 0; i < qir_get_op_nsrc(inst->op); i++) {
+ for (int i = 0; i < qir_get_nsrc(inst); i++) {
if (inst->src[i].file == QFILE_TEMP &&
inst->src[i].pack) {
if (qir_is_float_input(inst)) {