[clang] [llvm] [AMDGPU] Introduce asyncmark/wait intrinsics (PR #180467)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Feb 12 09:20:43 PST 2026
================
@@ -975,6 +999,14 @@ class WaitcntBrackets {
// Store representative LDS DMA operations. The only useful info here is
// alias info. One store is kept per unique AAInfo.
SmallVector<const MachineInstr *> LDSDMAStores;
+
+ // State of all counters at each async mark encountered so far.
+ SmallVector<CounterValueArray> AsyncMarks;
+ static constexpr unsigned MaxAsyncMarks = 16;
----------------
vporpo wrote:
> AsyncMarks is a FIFO. Constantly enforcing MaxAsyncMarks as a data-structure limit would require removing elements from the front.
If it's a FIFO, then please use a proper FIFO data structure. The logic of this pass is already very tricky to follow, so having to deal with a FIFO that is not explicitly defined as such is not great.
https://github.com/llvm/llvm-project/pull/180467
More information about the cfe-commits
mailing list