llvm-capstone/mlir/lib/IR
River Riddle 7d1452d837 [mlir] Refactor OpInterface internals to be faster and factor out common bits.
This revision adds a new support header, InterfaceSupport, to contain various generic bits of functionality for implementing "Interfaces". Interfaces embody a mechanism for attaching concept-based polymorphism to a type system. With this refactoring a new InterfaceMap type is added to allow for efficient interface lookups without going through an indirect call. This should provide a decent performance speedup without changing the size of AbstractOperation.

In a future revision, this functionality will also be used to bring Interface like functionality to Attributes and Types.

Differential Revision: https://reviews.llvm.org/D81882
2020-06-24 17:23:58 -07:00
..
AffineExpr.cpp [mlir][NFC] Remove the STLExtras.h header file now that it has been merged into LLVM. 2020-04-14 15:14:41 -07:00
AffineExprDetail.h Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00
AffineMap.cpp Mark AffineMap::replaceDimsAndSymbols as const (NFC) 2020-05-20 03:11:41 +00:00
AffineMapDetail.h Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00
AsmPrinter.cpp [MLIR][NFC] Inline lambda to workaround gcc 9.1,9.2 bug 2020-06-16 15:31:06 +01:00
AttributeDetail.h [mlir] Fix representation of BF16 constants 2020-06-05 17:43:06 -07:00
Attributes.cpp [mlir] Refactor BoolAttr to be a special case of IntegerAttr 2020-06-04 16:41:24 -07:00
Block.cpp [mlir][Standard] Add a canonicalization to simplify cond_br when the successors are identical 2020-04-23 04:42:02 -07:00
Builders.cpp [mlir] [VectorOps] Improve vector.constant_mask lowering 2020-06-19 10:40:08 -07:00
CMakeLists.txt [MLIR][cmake] use add_mlir_interface() wherever possible 2020-06-12 09:27:56 -07:00
Diagnostics.cpp Fix SourceMgrDiagnosticHandler::convertLocToSMLoc for unknown line/column scenerio. 2020-06-15 16:15:12 -07:00
Dialect.cpp [mlir][NFC] Refactor ClassID into a TypeID class. 2020-04-10 23:52:33 -07:00
Dominance.cpp [MLIR] Allow unreachable blocks to violate dominance property. 2020-05-15 10:31:57 -07:00
Function.cpp [mlir] Add NamedAttrList 2020-05-07 12:33:36 -07:00
FunctionImplementation.cpp [mlir] Add NamedAttrList 2020-05-07 12:33:36 -07:00
IntegerSet.cpp [MLIR][NFC] drop some unnecessary includes 2020-03-27 09:17:27 +05:30
IntegerSetDetail.h Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00
Location.cpp [mlir][NFC] Refactor ClassID into a TypeID class. 2020-04-10 23:52:33 -07:00
LocationDetail.h [mlir][NFC] Refactor ClassID into a TypeID class. 2020-04-10 23:52:33 -07:00
MLIRContext.cpp [mlir] Refactor OpInterface internals to be faster and factor out common bits. 2020-06-24 17:23:58 -07:00
Module.cpp Rename NamedAttributeList to MutableDictionaryAttr 2020-04-29 14:58:02 -07:00
Operation.cpp [MLIR] Add an Op util which returns its name with the dialect stripped. 2020-06-16 16:47:24 -07:00
OperationSupport.cpp [mlir] NFC - Fix OperationSupport.cpp::findNamedAttr 2020-05-18 09:36:00 -04:00
PatternMatch.cpp [mlir] Allow for patterns to match any root kind. 2020-06-18 13:58:47 -07:00
Region.cpp [mlir][IR] Add a Region::getOps method that returns a range of immediately nested operations 2020-05-04 17:46:25 -07:00
StandardTypes.cpp [mlir] Unranked memref type has no rank 2020-06-08 18:08:14 -07:00
SymbolTable.cpp [mlir] Add NamedAttrList 2020-05-07 12:33:36 -07:00
TypeDetail.h [mlir] Add a signedness semantics bit to IntegerType 2020-02-21 09:16:54 -05:00
Types.cpp [mlir] Refactor the structure of the 'verifyConstructionInvariants' methods. 2020-02-20 10:37:52 -08:00
TypeUtilities.cpp Eliminate all uses of Identifier::is() in the source tree, this doesn't remove the definition of it (yet). NFC. 2020-04-13 11:49:31 -07:00
Value.cpp [mlir] Add support for merging identical blocks during canonicalization 2020-05-04 19:56:46 -07:00
Verifier.cpp [MLIR] Allow unreachable blocks to violate dominance property. 2020-05-15 10:31:57 -07:00
Visitors.cpp Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00