[clang] [llvm] [mlir] [NVPTX] Add support for Shared Cluster Memory address space. (PR #135444)

via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 21 16:32:56 PDT 2025


================
@@ -280,8 +282,10 @@ NVPTXTargetMachine::getPredicatedAddrSpace(const Value *V) const {
     case Intrinsic::nvvm_isspacep_local:
       return std::make_pair(II->getArgOperand(0), llvm::ADDRESS_SPACE_LOCAL);
     case Intrinsic::nvvm_isspacep_shared:
-    case Intrinsic::nvvm_isspacep_shared_cluster:
       return std::make_pair(II->getArgOperand(0), llvm::ADDRESS_SPACE_SHARED);
+    case Intrinsic::nvvm_isspacep_shared_cluster:
----------------
modiking wrote:

Technically this is conservative since `nvvm_isspacep_shared_cluster == true` implies that the pointer is also under `ADDRESS_SPACE_SHARED`. However the current interface only allows returning one address so that'll need to get updated. I'm planning on improving InferAddrSpaces to also detect from mapa/mapa_shared_cluster so I'll update this part as well during that.

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


More information about the llvm-commits mailing list