From: Eric Anholt Date: Thu, 25 Apr 2019 19:29:55 +0000 (-0700) Subject: v3d: Fix detection of the last ldtmu before a new TMU op. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=18894a5e5a55e110aa0b2a64d5446c4ffcef1365;p=mesa.git 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. --- 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; }