llvm-project/mlir/docs
Andrew Young a55a0a3056
[mlir] Remove over specified memory effects
The standard and gpu dialect both have `alloc` operations which use the
memory effect `MemAlloc`.  In both cases, it is specified on both  the
operation itself and on the result.  This results in two memory effects
being created for these operations.  When `MemAlloc` is defined on an
operation, it represents some background effect which the compiler
cannot reason about, and  inhibits the ability of the compiler to
remove dead `std.alloc` operations.  This change removes the uneeded
`MemAlloc` effect from these operations and leaves the effect on the
result, which allows dead allocs to be erased.

There is the same problem, but to a lesser extent, with MemFree, MemRead
and MemWrite. Over-specifying these traits is not currently inhibiting
any optimization.

Differential Revision: https://reviews.llvm.org/D94662
2021-01-14 14:49:41 -08:00
..
Bindings [mlir][Python] Support finding pybind11 from the python environment. 2020-11-22 12:52:01 -08:00
Dialects [mlir][linalg] Add docstring support for named op spec 2021-01-14 09:57:56 -05:00
Rationale [mlir] Add section page for Rationale docs. 2020-12-14 14:49:30 -08:00
Tutorials [mlir] Update doc to omit the usage of LLVMIntegerType 2021-01-14 09:29:24 +01:00
includes/img [MLIR] Added documentation and manual to use bufferization features. 2020-11-12 10:43:05 +01:00
BufferDeallocationInternals.md [mlir][docs] Bring bufferization docs up to date. 2021-01-14 12:28:35 -08:00
Bufferization.md [mlir][docs] Bring bufferization docs up to date. 2021-01-14 12:28:35 -08:00
CAPI.md [mlir] NFC: fix trivial typos 2021-01-07 02:36:02 +09:00
CMakeLists.txt Remove CMake configuration for Sphinx targets in MLIR 2020-03-12 01:28:38 +00:00
Canonicalization.md Merge OpFolderDialectInterface with DialectFoldInterface (NFC) 2020-08-13 00:39:22 +00:00
ConversionToLLVMDialect.md [mlir] use built-in vector types instead of LLVM dialect types when possible 2021-01-12 10:04:28 +01:00
DeclarativeRewrites.md [mlir] Simplify DDR matching patterns with equal operands for operators where it's applicable. Added documentation. 2020-10-21 21:31:39 +00:00
Diagnostics.md [Support] Move LLD's parallel algorithm wrappers to support 2020-05-05 15:21:05 -07:00
DialectConversion.md [mlir][doc] Correct method names in DialectConversion.md to match the code. 2020-12-02 00:04:07 -08:00
EDSC.md [mlir] Change dialect namespace loop->scf 2020-05-13 19:20:21 +02:00
Interfaces.md [mlir] Remove over specified memory effects 2021-01-14 14:49:41 -08:00
LLVMDialectMemRefConvention.md [mlir] replace LLVM dialect float types with built-ins 2021-01-08 17:38:12 +01:00
LangRef.md Update syntax for tensor and memref types to match parser. 2021-01-11 22:57:14 +00:00
OpDefinitions.md [mlir][TypeDefGen] Add support for adding builders when generating a TypeDef 2021-01-11 12:06:22 -08:00
PassManagement.md [mlir] Add a hook for initializing passes before execution and use it in the Canonicalizer 2021-01-08 13:36:12 -08:00
Passes.md [mlir] Add tensor passes to passes.md 2020-12-23 16:13:03 -08:00
PatternRewriter.md [MLIR][Docs] Fix a small typo in documentation. 2020-12-21 22:30:22 +01:00
Quantization.md [mlir][NFC] Remove usernames and google bug numbers from TODO comments. 2020-07-07 01:40:52 -07:00
README.txt [mlir] Add short readme.txt to docs directory 2020-02-18 08:35:22 -08:00
SPIRVToLLVMDialectConversion.md [mlir] use built-in vector types instead of LLVM dialect types when possible 2021-01-12 10:04:28 +01:00
ShapeInference.md [mlir][Types][NFC] Move all of the builtin Type classes to BuiltinTypes.h 2020-12-03 18:02:10 -08:00
SymbolsAndSymbolTables.md [MLIR] Extend Symbol verification to reject public symbol declarations. 2020-11-16 16:05:32 -08:00
Traits.md [mlir] Add ElementwiseMappable trait and apply it to std elementwise ops. 2020-11-10 13:44:44 -08:00
doxygen-mainpage.dox [mlir] Bootstrap doxygen config 2020-01-25 09:31:59 -08:00
doxygen.cfg.in [mlir] NFC: fix trivial typo 2020-04-29 14:47:56 +09:00

README.txt

MLIR documentation
==================

Please note mlir.llvm.org is where MLIR's rendered documentation is displayed.
The viewing experience on GitHub or elsewhere may not match those of the
website. For any changes please verify instead that they work on the main
website first.

See https://github.com/llvm/mlir-www for the website generation information.