[llvm] AMDGPU/GFX12: Fix s_barrier_signal_isfirst for single-wave workgroups (PR #143634)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 10 17:49:43 PDT 2025
Nicolai =?utf-8?q?Hähnle?= <nicolai.haehnle at amd.com>,
Nicolai =?utf-8?q?Hähnle?= <nhaehnle at gmail.com>,
Nicolai =?utf-8?q?Hähnle?= <nhaehnle at gmail.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/143634 at github.com>
================
@@ -5411,6 +5411,14 @@ SITargetLowering::EmitInstrWithCustomInserter(MachineInstr &MI,
MI.eraseFromParent();
return BB;
}
+ case AMDGPU::S_BARRIER_SIGNAL_ISFIRST_IMM: {
+ // Set SCC to true, in case the barrier instruction gets converted to a NOP.
+ BuildMI(*BB, MI.getIterator(), MI.getDebugLoc(),
+ TII->get(AMDGPU::S_CMP_EQ_U32))
+ .addImm(0)
+ .addImm(0);
----------------
arsenm wrote:
So it's sort of a hardware bug? The ordinary behavior is SCC is always set to 1? And if it nops it leaves it in the previous state?
https://github.com/llvm/llvm-project/pull/143634
More information about the llvm-commits
mailing list