[PATCH] D78195: [MLIR] Add IndexAttr to primitive attributes kinds in tablegen.

Ulysse Beaugnon via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 15 05:26:31 PDT 2020


ulysseB created this revision.
ulysseB added a reviewer: ftynse.
Herald added subscribers: llvm-commits, frgossen, grosul1, Joonsoo, liufengdb, lucyrfox, mgester, arpith-jacob, nicolasvasilache, antiagainst, shauheen, burmako, jpienaar, rriddle, mehdi_amini, arphaman.
Herald added a reviewer: rriddle.
Herald added a reviewer: antiagainst.
Herald added a project: LLVM.

OpBase.td defined attributes kind for all integer types expect index. This
commit fixes that by adding an IndexAttr attribute kind.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D78195

Files:
  mlir/include/mlir/IR/OpBase.td
  mlir/test/IR/attribute.mlir


Index: mlir/test/IR/attribute.mlir
===================================================================
--- mlir/test/IR/attribute.mlir
+++ mlir/test/IR/attribute.mlir
@@ -8,6 +8,8 @@
   "test.int_attrs"() {
     // CHECK: any_i32_attr = 5 : ui32
     any_i32_attr = 5 : ui32,
+    // CHECK-SAME: index_attr = 8 : index
+    index_attr = 8 : index,
     // CHECK-SAME: si32_attr = 7 : si32
     si32_attr = 7 : si32,
     // CHECK-SAME: ui32_attr = 6 : ui32
Index: mlir/include/mlir/IR/OpBase.td
===================================================================
--- mlir/include/mlir/IR/OpBase.td
+++ mlir/include/mlir/IR/OpBase.td
@@ -844,6 +844,16 @@
   let constBuilderCall = "$_builder.getBoolAttr($0)";
 }
 
+// Index attribute.
+def IndexAttr :
+    TypedAttrBase<
+      Index, "IntegerAttr",
+      And<[CPred<"$_self.isa<IntegerAttr>()">,
+           CPred<"$_self.cast<IntegerAttr>().getType().isa<IndexType>()">]>,
+      "index attribute"> {
+  let returnType = [{ APInt }];
+}
+
 // Base class for any integer (regardless of signedness semantics) attributes
 // of fixed width.
 class AnyIntegerAttrBase<AnyI attrValType, string descr> :


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78195.257677.patch
Type: text/x-patch
Size: 1152 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200415/e5aa5a32/attachment-0001.bin>


More information about the llvm-commits mailing list