llvm-project/mlir/lib/TableGen
Mogball 60e34f8ddd [mlir][ods] Remove StrEnumAttr
StrEnumAttr has been deprecated in favour of EnumAttr, a solution based on AttrDef (https://reviews.llvm.org/D115181). This patch removes StrEnumAttr, along with all the custom ODS logic required to handle it.

See https://discourse.llvm.org/t/psa-stop-using-strenumattr-do-use-enumattr/5710 on how to transition to EnumAttr. In short,

```
// Before
def MyEnumAttr : StrEnumAttr<"MyEnum", "", [
  StrEnumAttrCase<"A">,
  StrEnumAttrCase<"B">
]>;

// After (pick an integer enum of your choice)
def MyEnum : I32EnumAttr<"MyEnum", "", [
  I32EnumAttrCase<"A", 0>,
  I32EnumAttrCase<"B", 1>
]> {
  // Don't generate a C++ class! We want to use the AttrDef
  let genSpecializedAttr = 0;
}
// Define the AttrDef
def MyEnum : EnumAttr<MyDialect, MyEnum, "my_enum">;
```

Reviewed By: rriddle, jpienaar

Differential Revision: https://reviews.llvm.org/D120834
2022-04-13 17:49:02 +00:00
..
Argument.cpp [mlir] Add support for VariadicOfVariadic operands 2021-08-23 20:32:31 +00:00
AttrOrTypeDef.cpp [mlir] Refactor how parser/printers are specified for AttrDef/TypeDef 2022-03-15 00:42:31 -07:00
Attribute.cpp [mlir][ods] Remove StrEnumAttr 2022-04-13 17:49:02 +00:00
Builder.cpp [mlir][NFC] Add a using for llvm::SMLoc/llvm::SMRange to LLVM.h 2022-01-26 21:37:23 -08:00
CMakeLists.txt [mlir][ods] Cleanup of Class Codegen helper 2021-11-12 21:22:01 +00:00
Class.cpp [mlir][ods] ODS ops get an `extraClassDefinition` 2022-01-06 01:43:26 +00:00
Constraint.cpp [PDLL] Add support for tablegen includes and importing ODS information 2022-03-03 16:14:03 -08:00
Dialect.cpp Revert "[mlir] Add extensible dialects" 2022-03-03 10:30:50 +00:00
Format.cpp [llvm] Cleanup header dependencies in ADT and Support 2022-01-21 13:54:49 +01:00
Interfaces.cpp [mlir] Support verification order (2/3) 2022-02-25 19:04:56 +00:00
Operator.cpp [mlir][ODS] Infer return types if the operands are variadic but the results are not 2022-02-18 15:29:06 +01:00
Pass.cpp Fix more clang-tidy cleanups in mlir/ (NFC) 2021-12-22 20:53:11 +00:00
Pattern.cpp [mlir][Rewrite] Add support for using an operation with no results as location 2022-02-03 15:08:09 +01:00
Predicate.cpp [mlir][NFC] Add a using for llvm::SMLoc/llvm::SMRange to LLVM.h 2022-01-26 21:37:23 -08:00
Region.cpp
SideEffects.cpp [mlir] Add support for adding attribute+type traits/interfaces to tablegen defs 2021-04-15 11:41:51 -07:00
Successor.cpp
Trait.cpp [mlir] Support verification order (2/3) 2022-02-25 19:04:56 +00:00
Type.cpp [mlir][ods] Unique attribute, successor, region constraints 2021-11-12 01:04:08 +00:00