[llvm] [AMDGPU] Fix Xcnt handling between blocks (PR #165201)

Jay Foad via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 3 03:48:39 PST 2025


================
@@ -1288,18 +1288,38 @@ void WaitcntBrackets::applyWaitcnt(InstCounterType T, unsigned Count) {
 }
 
 void WaitcntBrackets::applyXcnt(const AMDGPU::Waitcnt &Wait) {
+  // On entry to a block with multiple predescessors, there may
+  // be pending SMEM and VMEM events active at the same time.
+  // In such cases, only clear one active event at a time.
+  auto applyPendingXcntGroup = [this](unsigned E) {
----------------
jayfoad wrote:

Nit: this really should not have "group" in the name. Xcnt insertion has nothing to do with groups. This goes back to #145566 which added the bad names "SMEM_GROUP" and "VMEM_GROUP".

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


More information about the llvm-commits mailing list