aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2019-04-25 12:29:55 -0700
committerEric Anholt <[email protected]>2019-04-26 12:42:30 -0700
commit18894a5e5a55e110aa0b2a64d5446c4ffcef1365 (patch)
tree52f2de00cf10969c0c28d4ca7536543b3eeabbc7
parent575caab895d75e80d790357d68943cc78b877ea2 (diff)
v3d: Fix detection of the last ldtmu before a new TMU op.
We were looking at the start instruction, instead of scanning through the list of following instructions to find any more ldtmus.
-rw-r--r--src/broadcom/compiler/vir_register_allocate.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/broadcom/compiler/vir_register_allocate.c b/src/broadcom/compiler/vir_register_allocate.c
index 32b9a8abe8e..1b58bb9c420 100644
--- a/src/broadcom/compiler/vir_register_allocate.c
+++ b/src/broadcom/compiler/vir_register_allocate.c
@@ -36,11 +36,11 @@
static bool
is_last_ldtmu(struct qinst *inst, struct qblock *block)
{
- list_for_each_entry_from(struct qinst, scan_inst, inst,
+ list_for_each_entry_from(struct qinst, scan_inst, inst->link.next,
&block->instructions, link) {
- if (inst->qpu.sig.ldtmu)
+ if (scan_inst->qpu.sig.ldtmu)
return false;
- if (v3d_qpu_writes_tmu(&inst->qpu))
+ if (v3d_qpu_writes_tmu(&scan_inst->qpu))
return true;
}