llvm-project/mlir/lib/IR
Chris Lattner aaa2982d71 [MLIR Core] Cache the empty StringAttr like we do for empty dictionaries. NFC.
MLIRContext holds a few special case values that occur frequently like empty
dictionary and NoneType, which allow us to avoid taking locks to get an instance
of them.  Give the empty StringAttr this treatment as well.  This cuts several
percent off compile time for CIRCT.

Differential Revision: https://reviews.llvm.org/D103117
2021-05-25 14:58:17 -07:00
..
AffineExpr.cpp s[mlir] Tighten computation of inferred SubView result type. 2021-02-11 22:38:16 +00:00
AffineExprDetail.h [mlir] Remove the use of "kinds" from Attributes and Types 2020-08-18 16:20:14 -07:00
AffineMap.cpp [mlir][linalg] Add scalar operands inlining pattern 2021-05-21 15:23:28 +02: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 [IR] Add a Location to BlockArgument 2021-05-23 14:10:00 -07:00
AttributeDetail.h [mlir][IR] Move the remaining builtin attributes to ODS. 2021-03-16 16:31:53 -07:00
Attributes.cpp [mlir] Remove the MutableDictionaryAttr class 2020-12-17 17:18:42 -08:00
Block.cpp [IR] Add a Location to BlockArgument 2021-05-23 14:10:00 -07:00
Builders.cpp [IR] Add a Location to BlockArgument 2021-05-23 14:10:00 -07:00
BuiltinAttributes.cpp [MLIR Core] Cache the empty StringAttr like we do for empty dictionaries. NFC. 2021-05-25 14:58:17 -07:00
BuiltinDialect.cpp [mlir] Refactor the representation of function-like argument/result attributes. 2021-05-07 19:32:31 -07:00
BuiltinTypes.cpp [mlir][tensors] Introduce attribute interface/attribute for tensor encoding 2021-04-26 18:31:54 -07:00
CMakeLists.txt [mlir][tensors] Introduce attribute interface/attribute for tensor encoding 2021-04-26 18:31:54 -07:00
Diagnostics.cpp [mlir] Elide large elements attrs when printing Operations in diagnostics 2021-05-11 13:50:27 -07:00
Dialect.cpp Add a mechanism for Dialects to customize printing/parsing operations when they are unregistered 2021-03-23 00:40:03 +00:00
Dominance.cpp Microoptimize dominance a bit - NFC. 2021-05-01 12:40:13 -07:00
FunctionImplementation.cpp [IR] Add a Location to BlockArgument 2021-05-23 14:10:00 -07:00
FunctionSupport.cpp [mlir] Refactor the representation of function-like argument/result attributes. 2021-05-07 19:32:31 -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] Add support for walking locations similarly to Operations 2021-04-15 16:09:34 -07:00
MLIRContext.cpp [MLIR Core] Cache the empty StringAttr like we do for empty dictionaries. NFC. 2021-05-25 14:58:17 -07:00
Operation.cpp Fix deletion of operations through the rewriter in a pattern matching a consumer operation 2021-03-30 22:02:14 +00:00
OperationSupport.cpp [mlir] Store the flag for dynamic operand storage in the low bits 2021-05-06 12:45:35 -07:00
PatternMatch.cpp [mlir][Pattern] Add better support for using interfaces/traits to match root operations in rewrite patterns 2021-03-23 14:05:33 -07:00
Region.cpp [NFC] Add getArgumentTypes() to Region 2020-07-28 18:27:42 -07:00
RegionKindInterface.cpp [MLIR] Add RegionKindInterface 2020-07-15 14:27:05 -07:00
SymbolTable.cpp [mlir][NFC] Add a using directive for llvm::SetVector 2021-04-15 16:09:34 -07:00
TensorEncoding.cpp [mlir][tensors] Introduce attribute interface/attribute for tensor encoding 2021-04-26 18:31:54 -07:00
TypeDetail.h [mlir] Compare elements directly rather than creating pair first 2021-03-24 14:39:11 -07:00
TypeRange.cpp [mlir][IR] Refactor the internal implementation of Value 2021-03-03 14:33:37 -08:00
TypeUtilities.cpp [mlir] Correct verifyCompatibleShapes 2021-03-11 13:04:10 +01:00
Types.cpp [mlir] Add better support for f80 and f128 2021-01-15 10:29:48 -05:00
Value.cpp [IR] Add a Location to BlockArgument 2021-05-23 14:10:00 -07:00
Verifier.cpp [Verifier] Slightly refactor code to reduce duplication, NFC. 2021-05-01 11:43:15 -07:00
Visitors.cpp [mlir] Add 'Skip' result to Operation visitor 2021-03-06 00:02:20 +02:00