Mesa (main): broadcom/compiler: don't allow RF writes from signals after thrend
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Nov 22 13:11:10 UTC 2021
Module: Mesa
Branch: main
Commit: bd7584c16bc56fdcb3a7a720c9a857e158f699d2
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bd7584c16bc56fdcb3a7a720c9a857e158f699d2
Author: Iago Toral Quiroga <itoral at igalia.com>
Date: Mon Nov 22 12:23:13 2021 +0100
broadcom/compiler: don't allow RF writes from signals after thrend
Writes to physical registers are not allowed after thread end. We
were checking this for ALU writes, but we need to check it for
signal writes too.
Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13910>
---
src/broadcom/compiler/qpu_schedule.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/broadcom/compiler/qpu_schedule.c b/src/broadcom/compiler/qpu_schedule.c
index f987766a1b9..de71d1372d6 100644
--- a/src/broadcom/compiler/qpu_schedule.c
+++ b/src/broadcom/compiler/qpu_schedule.c
@@ -1517,6 +1517,11 @@ qpu_inst_valid_in_thrend_slot(struct v3d_compile *c,
return false;
}
+ if (v3d_qpu_sig_writes_address(c->devinfo, &inst->sig) &&
+ !inst->sig_magic) {
+ return false;
+ }
+
if (c->devinfo->ver < 40 && inst->alu.add.op == V3D_QPU_A_SETMSF)
return false;
More information about the mesa-commit
mailing list