[llvm] [NVPTX] Add Volta Atomic SequentiallyConsistent Load and Store Operations (PR #98551)

via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 1 12:54:50 PDT 2024


================
@@ -820,68 +845,76 @@ static unsigned int getCodeMemorySemantic(MemSDNode *N,
       (CodeAddrSpace == NVPTX::PTXLdStInstCode::GENERIC ||
        CodeAddrSpace == NVPTX::PTXLdStInstCode::GLOBAL ||
        CodeAddrSpace == NVPTX::PTXLdStInstCode::SHARED);
+  if (!AddrGenericOrGlobalOrShared)
+    return NVPTX::Ordering::NotAtomic;
----------------
gonzalobg wrote:

Right now, according to the PTX spec, doing a `volatile` of a `.const` is undefined behavior. 
We should probably fix that in the spec, the PTX implementation, and once we add the `.const` and `.param` tests, update all of this as needed.

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


More information about the llvm-commits mailing list