[all-commits] [llvm/llvm-project] 31a346: [MLIR][Vector] Add support for TupleGetOp folding ...

andydavis1 via All-commits all-commits at lists.llvm.org
Tue Mar 31 08:39:23 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 31a346cc35c829e207fbf24d8f8f1ee22ca9f140
      https://github.com/llvm/llvm-project/commit/31a346cc35c829e207fbf24d8f8f1ee22ca9f140
  Author: Andy Davis <andydavis at google.com>
  Date:   2020-03-31 (Tue, 31 Mar 2020)

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

  Log Message:
  -----------
  [MLIR][Vector] Add support for TupleGetOp folding through InsertSlicesOp and ExtractSlicesOp.

Summary:
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.

Reviewers: nicolasvasilache, aartbik

Reviewed By: aartbik

Subscribers: grosul1, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76889




More information about the All-commits mailing list