[Mlir-commits] [mlir] 1517334 - [mlir] EnumAttr.td: Fix the width	of I64Enum (#156133)
    llvmlistbot at llvm.org 
    llvmlistbot at llvm.org
       
    Mon Sep  1 14:13:28 PDT 2025
    
    
  
Author: Fangrui Song
Date: 2025-09-01T14:13:24-07:00
New Revision: 15173344aa958f1e123d4f8626fc0ff4d67c8635
URL: https://github.com/llvm/llvm-project/commit/15173344aa958f1e123d4f8626fc0ff4d67c8635
DIFF: https://github.com/llvm/llvm-project/commit/15173344aa958f1e123d4f8626fc0ff4d67c8635.diff
LOG: [mlir] EnumAttr.td: Fix the width of I64Enum (#156133)
Follow-up to #132148
Added: 
    
Modified: 
    mlir/include/mlir/IR/EnumAttr.td
    mlir/test/lib/Dialect/Test/TestEnumDefs.td
Removed: 
    
################################################################################
diff  --git a/mlir/include/mlir/IR/EnumAttr.td b/mlir/include/mlir/IR/EnumAttr.td
index ff6cec6d41161..7eba68f05f4c3 100644
--- a/mlir/include/mlir/IR/EnumAttr.td
+++ b/mlir/include/mlir/IR/EnumAttr.td
@@ -289,7 +289,7 @@ class IntEnum<string name, string summary, list<EnumCase> cases, int width>
 class I32Enum<string name, string summary, list<EnumCase> cases>
     : IntEnum<name, summary, cases, 32>;
 class I64Enum<string name, string summary, list<EnumCase> cases>
-    : IntEnum<name, summary, cases, 32>;
+    : IntEnum<name, summary, cases, 64>;
 
 // An enum attribute backed by IntegerAttr.
 //
diff  --git a/mlir/test/lib/Dialect/Test/TestEnumDefs.td b/mlir/test/lib/Dialect/Test/TestEnumDefs.td
index 10e424a0f2523..51938d4dc68bb 100644
--- a/mlir/test/lib/Dialect/Test/TestEnumDefs.td
+++ b/mlir/test/lib/Dialect/Test/TestEnumDefs.td
@@ -27,9 +27,10 @@ def SomeI32Enum : I32EnumAttr<"SomeI32Enum", "",
 
 def I64Case5:  I64EnumAttrCase<"case5", 5>;
 def I64Case10: I64EnumAttrCase<"case10", 10>;
+def I64Case1p32 : I64EnumAttrCase<"caseLarse", 4294967296>;
 
 def SomeI64Enum: I64EnumAttr<
-  "SomeI64Enum", "", [I64Case5, I64Case10]>;
+  "SomeI64Enum", "", [I64Case5, I64Case10, I64Case1p32]>;
 
 //===----------------------------------------------------------------------===//
 // Test Enum
@@ -53,6 +54,13 @@ def TestSimpleEnum : I32Enum<"SimpleEnum", "", [
   let cppNamespace = "::test";
 }
 
+def TestSimpleEnum64 : I64Enum<"SimpleEnum64", "", [
+    I64EnumCase<"a", 4294967296>,
+    I64EnumCase<"b", 4294967297>
+  ]> {
+  let cppNamespace = "::test";
+}
+
 //===----------------------------------------------------------------------===//
 // Test Bit Enum
 //===----------------------------------------------------------------------===//
        
    
    
More information about the Mlir-commits
mailing list