[llvm] [AMDGPU] Sink async DMA out of s_cbranch_execz then-blocks (PR #196374)
Vigneshwar Jayakumar via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 23 12:46:07 PDT 2026
================
@@ -654,6 +663,128 @@ void SILowerControlFlow::optimizeEndCf() {
}
}
+static MachineInstr *findExecRestoreAtBlockStart(MachineBasicBlock &JoinBB,
+ const SIRegisterInfo *TRI) {
+ for (MachineInstr &MI : JoinBB) {
+ if (MI.isMetaInstruction() || MI.isDebugInstr())
+ continue;
+ return MI.modifiesRegister(AMDGPU::EXEC, TRI) ? &MI : nullptr;
+ }
+ return nullptr;
+}
+
+bool SILowerControlFlow::sinkAsyncDMAOutOfExeczBlocks(MachineFunction &MF) {
----------------
VigneshwarJ wrote:
Moved it to a new pass
https://github.com/llvm/llvm-project/pull/196374
More information about the llvm-commits
mailing list