================
@@ -40,6 +40,25 @@ class AMDGPURsrcIntrinsic<int rsrcarg, bit isimage = false> {
bit IsImage = isimage;
}
+// Marker classes for asynchronous operations.
+class AMDGPUAsyncIntrinsic {
+ Intrinsic Intr = !cast<Intrinsic>(NAME);
+}
+
+// DMA transfers between global memory and LDS.
+class AMDGPULDSDMAIntrinsic : AMDGPUAsyncIntrinsic;
----------------
zGoldthorpe wrote:
I think I got too comfortable using "async" imprecisely (and it seems to have
caused me a lot of confusion even in earlier patches on this stack). I meant
async in the sense that the LDSDMA intrinsics don't get tracked with
LDS-related counters.
I've fixed this in the whole stack. Hopefully everything makes more sense now.
https://github.com/llvm/llvm-project/pull/225488
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits