[llvm-branch-commits] [llvm] [AMDGPU] Implement "non-av" semantics using metadata (PR #199489)
Sameer Sahasrabuddhe via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Tue May 26 20:00:38 PDT 2026
================
@@ -733,6 +737,13 @@ getSynchronizeAddrSpaceMD(const MachineInstr &MI) {
return Result;
}
+static bool hasAVNoneMMRA(const MachineInstr &MI) {
+ auto MMRA = MMRAMetadata(MI.getMMRAMetadata());
+ if (!MMRA)
+ return false;
+ return MMRA.hasTag("amdgcn-av", "none");
----------------
ssahasra wrote:
> Should the tag name be `amdgpu-av`, to be more consistent with the existing `amdgpu-synchronize-as`?
It's something I had explored. `amdgpu-synchronize-as` is one of the rare places where "amdgpu" is used, while in the case of almost all builtins, intrinsics and metadata, "amdgcn" is the convention. @Pierre-vh were you trying to start a newer convention with the `amdgpu-synchronize-as`?
> Also: should we diagnose values other than `"none"`? There is no case where we want to make use of the happens-before-breaking semantics of incompatible MMRAs, right?
Yes, I will add the check.
https://github.com/llvm/llvm-project/pull/199489
More information about the llvm-branch-commits
mailing list