llvm-project/mlir/lib/Transforms
Sean Silva 444822d77a Revert "Revert "[mlir] Start splitting the `tensor` dialect out of `std`.""
This reverts commit 0d48d265db.

This reapplies the following commit, with a fix for CAPI/ir.c:

[mlir] Start splitting the `tensor` dialect out of `std`.

This starts by moving `std.extract_element` to `tensor.extract` (this
mirrors the naming of `vector.extract`).

Curiously, `std.extract_element` supposedly works on vectors as well,
and this patch removes that functionality. I would tend to do that in
separate patch, but I couldn't find any downstream users relying on
this, and the fact that we have `vector.extract` made it seem safe
enough to lump in here.

This also sets up the `tensor` dialect as a dependency of the `std`
dialect, as some ops that currently live in `std` depend on
`tensor.extract` via their canonicalization patterns.

Part of RFC: https://llvm.discourse.group/t/rfc-split-the-tensor-dialect-from-std/2347/2

Differential Revision: https://reviews.llvm.org/D92991
2020-12-11 14:30:50 -08:00
..
Utils Revert "Revert "[mlir] Start splitting the `tensor` dialect out of `std`."" 2020-12-11 14:30:50 -08:00
BufferDeallocation.cpp [mlir] Split BufferUtils.h out of Bufferize.h 2020-11-19 12:56:36 -08:00
BufferOptimizations.cpp [MLIR] Added support for dynamic shaped allocas to promote-buffers-to-stack pass. 2020-12-03 11:47:49 +01:00
BufferResultsToOutParams.cpp [mlir] Add BufferResultsToOutParams pass. 2020-10-30 14:06:14 -07:00
BufferUtils.cpp [mlir] Split BufferUtils.h out of Bufferize.h 2020-11-19 12:56:36 -08:00
Bufferize.cpp [mlir] Small cleanups to func-bufferize/finalizing-bufferize 2020-11-30 17:04:14 -08:00
CMakeLists.txt [mlir] Split BufferUtils.h out of Bufferize.h 2020-11-19 12:56:36 -08:00
CSE.cpp [MLIR] Add RegionKindInterface 2020-07-15 14:27:05 -07:00
Canonicalizer.cpp [mlir][Pattern] Add a new FrozenRewritePatternList class 2020-10-26 18:01:06 -07:00
CopyRemoval.cpp [mlir] Fix bug in copy removal 2020-09-08 14:17:13 +02:00
Inliner.cpp [mlir] Use mlir::OpState::operator->() to get to methods of mlir::Operation. This is a preparation step to remove the corresponding methods from OpState. 2020-12-09 12:11:32 +01:00
LocationSnapshot.cpp [mlir][Pass] Update the PassGen to generate base classes instead of utilities 2020-04-07 14:08:52 -07:00
LoopCoalescing.cpp [mlir] Use mlir::OpState::operator->() to get to methods of mlir::Operation. This is a preparation step to remove the corresponding methods from OpState. 2020-12-09 12:11:32 +01:00
LoopFusion.cpp Add `Operation* OpState::operator->()` to provide more convenient access to members of Operation. 2020-12-02 15:46:20 +01:00
LoopInvariantCodeMotion.cpp [mlir][BuiltinDialect] Resolve comments from D91571 2020-11-19 11:12:49 -08:00
MemRefDataFlowOpt.cpp [MLIR] Vector store to load forwarding 2020-07-28 11:30:54 -07:00
NormalizeMemRefs.cpp [MLIR] Normalize the results of normalizable operations 2020-12-03 19:34:07 +05:30
OpStats.cpp [mlir][BuiltinDialect] Resolve comments from D91571 2020-11-19 11:12:49 -08:00
ParallelLoopCollapsing.cpp [mlir] NFC: Rename LoopOps dialect to SCF (Structured Control Flow) 2020-05-11 15:04:27 +02:00
PassDetail.h Separate the Registration from Loading dialects in the Context 2020-08-19 01:19:03 +00:00
PipelineDataTransfer.cpp [mlir][NFC] Remove usernames and google bug numbers from TODO comments. 2020-07-07 01:40:52 -07:00
SCCP.cpp [mlir][SCCP] Don't visit private callables unless they are used when tracking interprocedural arguments/results 2020-12-10 12:53:27 -08:00
StripDebugInfo.cpp [mlir][BuiltinDialect] Resolve comments from D91571 2020-11-19 11:12:49 -08:00
SymbolDCE.cpp [mlir] Optimize symbol related checks in SymbolDCE 2020-10-16 12:08:48 -07:00
ViewOpGraph.cpp [mlir][Types][NFC] Move all of the builtin Type classes to BuiltinTypes.h 2020-12-03 18:02:10 -08:00
ViewRegionGraph.cpp [mlir][Pass] Update the PassGen to generate base classes instead of utilities 2020-04-07 14:08:52 -07:00