[Mlir-commits] [mlir] [NVGPU] Fix crash on ui64 memory space attributes (#204580) (PR #204676)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Jun 18 21:02:43 PDT 2026
https://github.com/Naaz30 updated https://github.com/llvm/llvm-project/pull/204676
>From b37f32cb23e70b7631633df66ee139e4c8c2963f Mon Sep 17 00:00:00 2001
From: Naazni Yahya <naazniyahya at Naaznis-MacBook-Air.local>
Date: Fri, 19 Jun 2026 01:24:42 +0530
Subject: [PATCH] [NVGPU] Fix crash on ui64 memory space attributes (#204580)
---
mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp | 3 ++-
.../test/Dialect/NVGPU/optimize-shared-memory.mlir | 14 ++++++++++++++
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp b/mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp
index 6e1ed05c9d0d0..b53d95e92d7d1 100644
--- a/mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp
+++ b/mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp
@@ -50,7 +50,8 @@ bool NVGPUDialect::isSharedMemoryAddressSpace(Attribute memorySpace) {
if (!memorySpace)
return false;
if (auto intAttr = llvm::dyn_cast<IntegerAttr>(memorySpace))
- return intAttr.getInt() == NVGPUDialect::kSharedMemoryAddressSpace;
+ return intAttr.getValue().getZExtValue() ==
+ NVGPUDialect::kSharedMemoryAddressSpace;
if (auto gpuAttr = llvm::dyn_cast<gpu::AddressSpaceAttr>(memorySpace))
return gpuAttr.getValue() == gpu::AddressSpace::Workgroup;
return false;
diff --git a/mlir/test/Dialect/NVGPU/optimize-shared-memory.mlir b/mlir/test/Dialect/NVGPU/optimize-shared-memory.mlir
index 128c4c5d918d9..e6c31ddb3f856 100644
--- a/mlir/test/Dialect/NVGPU/optimize-shared-memory.mlir
+++ b/mlir/test/Dialect/NVGPU/optimize-shared-memory.mlir
@@ -270,3 +270,17 @@ func.func @test_vector_element_type() {
%alloc = memref.alloc() : memref<16x1xvector<16xf16>, 3>
return
}
+
+
+// -----
+
+/// Ensure ui64 memory space attributes do not crash
+// nvgpu-optimize-shared-memory (issue #204580).
+
+// CHECK-LABEL: func @test_int_conversion
+module {
+ func.func @test_int_conversion() {
+ %alloc = memref.alloc() {alignment = 64 : i64} : memref<10xf32, 1 : ui64>
+ return
+ }
+}
More information about the Mlir-commits
mailing list