llvm-project/mlir
aartbik c3c95b9c80 [mlir] [VectorOps] Improve lowering of extract_strided_slice (and friends like shape_cast)
Using a shuffle for the last recursive step in progressive lowering not only
results in much more compact IR, but also more efficient code (since the
backend is no longer confused on subvector aliasing for longer vectors).

E.g. the following

  %f = vector.shape_cast %v0: vector<1024xf32> to vector<32x32xf32>

yields much better x86-64 code that runs 3x faster than the original.

Reviewed By: bkramer, nicolasvasilache

Differential Revision: https://reviews.llvm.org/D85482
2020-08-07 09:21:05 -07:00
..
cmake/modules Install the MLIRTableGen static library. 2020-06-11 18:23:24 -07:00
docs [mlir] take LLVMContext in MLIR-to-LLVM-IR translation 2020-08-07 14:22:30 +02:00
examples Revisit Dialect registration: require and store a TypeID on dialects 2020-08-07 15:57:08 +00:00
include Revisit Dialect registration: require and store a TypeID on dialects 2020-08-07 15:57:08 +00:00
integration_test [mlir] [VectorOps] Add masked load/store operations to Vector dialect 2020-08-05 16:45:24 -07:00
lib [mlir] [VectorOps] Improve lowering of extract_strided_slice (and friends like shape_cast) 2020-08-07 09:21:05 -07:00
test [mlir] [VectorOps] Improve lowering of extract_strided_slice (and friends like shape_cast) 2020-08-07 09:21:05 -07:00
tools Revisit Dialect registration: require and store a TypeID on dialects 2020-08-07 15:57:08 +00:00
unittests Revisit Dialect registration: require and store a TypeID on dialects 2020-08-07 15:57:08 +00:00
utils [mlir][NFC] Remove usernames and google bug numbers from TODO comments. 2020-07-07 01:40:52 -07:00
.clang-format
.clang-tidy Fix MLIR clang-tidy: when tweaking it does not inherit from the parent 2020-03-07 17:44:21 +00:00
CMakeLists.txt [mlir] Initial version of C APIs 2020-08-05 15:04:08 +02:00
LICENSE.TXT Add the Apache2 with LLVM exceptions license to MLIR 2019-12-24 00:58:06 -08:00
README.md mlir README.md: Fix the syntax 2019-12-24 13:31:07 +01:00

README.md

Multi-Level Intermediate Representation

See https://mlir.llvm.org/ for more information.