[PATCH] D76889: BEGIN_PUBLIC [MLIR][Vector] Add support for TupleGetOp folding through InsertSlicesOp and ExtractSlicesOp.

Andy Davis via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 26 15:14:53 PDT 2020


andydavis1 created this revision.
andydavis1 added reviewers: nicolasvasilache, aartbik.
Herald added subscribers: llvm-commits, Joonsoo, liufengdb, lucyrfox, mgester, arpith-jacob, antiagainst, shauheen, burmako, jpienaar, rriddle, mehdi_amini.
Herald added a project: LLVM.

Add support for TupleGetOp folding through InsertSlicesOp and ExtractSlicesOp.
Vector-to-vector transformations for unrolling and lowering to hardware vectors
can generate chains of structured vector operations (InsertSlicesOp,
ExtractSlicesOp and ShapeCastOp) between the producer of a hardware vector
value and its consumer. Because InsertSlicesOp, ExtractSlicesOp and ShapeCastOp
are structured, we can track the location (tuple index and vector offsets) of
the consumer vector value through the chain of structured operations to the
producer, enabling a much more powerful producer-consumer fowarding of values
through structured ops and tuple, which in turn enables a more powerful
TupleGetOp folding transformation.

END_PUBLIC


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D76889

Files:
  mlir/include/mlir/Dialect/Vector/VectorUtils.h
  mlir/lib/Dialect/Vector/VectorTransforms.cpp
  mlir/lib/Dialect/Vector/VectorUtils.cpp
  mlir/test/Dialect/Vector/vector-transforms.mlir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76889.252989.patch
Type: text/x-patch
Size: 11505 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200326/ceb3fd28/attachment-0001.bin>


More information about the llvm-commits mailing list