llvm-project/mlir/lib/Transforms/Utils
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
..
CMakeLists.txt [mlir][NFC] Move around the code related to PatternRewriting to improve layering 2020-10-26 18:01:06 -07:00
DialectConversion.cpp [mlir][DialectConversion] Do not prematurely drop unused cast operations 2020-11-26 17:39:14 +01:00
FoldUtils.cpp Revert "Revert "[mlir] Start splitting the `tensor` dialect out of `std`."" 2020-12-11 14:30:50 -08:00
GreedyPatternRewriteDriver.cpp Add an optional argument for pattern rewriter max iteration count (NFC) 2020-11-16 22:57:14 +00:00
InliningUtils.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
LoopFusionUtils.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
LoopUtils.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
RegionUtils.cpp [MLIR] Correct block merge bug 2020-11-20 19:12:59 +01:00
Utils.cpp [mlir][BuiltinDialect] Resolve comments from D91571 2020-11-19 11:12:49 -08:00