[llvm] [AMDGPU] Mark ASYNCMARK as meta instruction to fix hazard cycle miscounting (PR #189981)

via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 17 04:06:07 PDT 2026


================
@@ -223,6 +223,13 @@ static const unsigned
         AMDGPU::S_WAIT_KMCNT,     AMDGPU::S_WAIT_XCNT,
         AMDGPU::S_WAIT_ASYNCCNT};
 
+// ASYNCMARK and WAIT_ASYNCMARK are meta instructions that emit no hardware
+// code but still need to be processed by this pass for async vmcnt tracking.
+static bool isNonWaitcntMetaInst(const MachineInstr &MI) {
+  return MI.isMetaInstruction() && MI.getOpcode() != AMDGPU::ASYNCMARK &&
+         MI.getOpcode() != AMDGPU::WAIT_ASYNCMARK;
+}
+
----------------
adeshcom14 wrote:

Fixed 


https://github.com/llvm/llvm-project/pull/189981


More information about the llvm-commits mailing list