From f24980f7413d11217e0141993ff7125c6096bcee Mon Sep 17 00:00:00 2001 From: Rhys Perry Date: Wed, 26 Apr 2023 15:02:22 +0100 Subject: [PATCH] aco: don't move exec writes around exec writes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Not sure if this is possible, but we should avoid it anyway. No fossil-db changes. Signed-off-by: Rhys Perry Reviewed-by: Timur Kristóf Cc: mesa-stable Part-of: (cherry picked from commit d0caa50dcdac152bba7192e4c2397959cf607d83) --- .pick_status.json | 2 +- src/amd/compiler/aco_scheduler.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 6b6f4ca86d2..bcb21919c49 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1084,7 +1084,7 @@ "description": "aco: don't move exec writes around exec writes", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/amd/compiler/aco_scheduler.cpp b/src/amd/compiler/aco_scheduler.cpp index 75c1e676b63..ef1da38ce3c 100644 --- a/src/amd/compiler/aco_scheduler.cpp +++ b/src/amd/compiler/aco_scheduler.cpp @@ -560,7 +560,7 @@ perform_hazard_query(hazard_query* query, Instruction* instr, bool upwards) if (!upwards && instr->opcode == aco_opcode::p_exit_early_if) return hazard_fail_unreorderable; - if (query->uses_exec) { + if (query->uses_exec || query->writes_exec) { for (const Definition& def : instr->definitions) { if (def.isFixed() && def.physReg() == exec) return hazard_fail_exec;