llvm-project/mlir/lib/Support
Alex Zinenko a51829913d [mlir] Support for mutable types
Introduce support for mutable storage in the StorageUniquer infrastructure.
This makes MLIR have key-value storage instead of just uniqued key storage. A
storage instance now contains a unique immutable key and a mutable value, both
stored in the arena allocator that belongs to the context. This is a
preconditio for supporting recursive types that require delayed initialization,
in particular LLVM structure types.  The functionality is exercised in the test
pass with trivial self-recursive type. So far, recursive types can only be
printed in parsed in a closed type system. Removing this restriction is left
for future work.

Differential Revision: https://reviews.llvm.org/D84171
2020-07-27 13:07:44 +02:00
..
CMakeLists.txt [MLIR] Fix linkage for libMLIR.so 2020-05-17 13:46:52 -07:00
FileUtilities.cpp Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00
MlirOptMain.cpp [mlir][mlir-opt] Disable multithreading when parsing the input module. 2020-05-04 17:29:56 -07:00
StorageUniquer.cpp [mlir] Support for mutable types 2020-07-27 13:07:44 +02:00
ToolUtilities.cpp Mass update the MLIR license header to mention "Part of the LLVM project" 2020-01-26 03:58:30 +00:00