Module: Mesa
Branch: main
Commit: 123c5e7c3a19c169a6116b3081ae777ebb81d8d9
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=123c5e7c3a19c169a6116b3081ae777ebb81d8d9

Author: Danylo Piliaiev <[email protected]>
Date:   Thu Jan 11 18:19:30 2024 +0100

ir3: Fix "print" meta instruction synchronization

There was a WAR hazard if something writes to sources last STG is
using. (sy)nop did not wait for sources to become "free", we
need to use (ss).

Signed-off-by: Danylo Piliaiev <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27013>

---

 src/freedreno/ir3/ir3_parser.y | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/freedreno/ir3/ir3_parser.y b/src/freedreno/ir3/ir3_parser.y
index b88d8ae529d..2a5ceb5fa6b 100644
--- a/src/freedreno/ir3/ir3_parser.y
+++ b/src/freedreno/ir3/ir3_parser.y
@@ -1395,7 +1395,7 @@ meta_print: T_OP_PRINT T_REGISTER ',' T_REGISTER {
        new_src(0, IR3_REG_IMMED)->iim_val = 1;
 
        new_instr(OPC_NOP);
-       instr->flags = IR3_INSTR_SY;
+       instr->flags = IR3_INSTR_SS;
 }
 
 src:               T_REGISTER     { $$ = new_src($1, 0); }

Reply via email to