forked from OSchip/llvm-project
60e34f8ddd
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 |
||
---|---|---|
.. | ||
Argument.cpp | ||
AttrOrTypeDef.cpp | ||
Attribute.cpp | ||
Builder.cpp | ||
CMakeLists.txt | ||
Class.cpp | ||
Constraint.cpp | ||
Dialect.cpp | ||
Format.cpp | ||
Interfaces.cpp | ||
Operator.cpp | ||
Pass.cpp | ||
Pattern.cpp | ||
Predicate.cpp | ||
Region.cpp | ||
SideEffects.cpp | ||
Successor.cpp | ||
Trait.cpp | ||
Type.cpp |