[all-commits] [llvm/llvm-project] 3f906c: [mlir][Vector] Add 2-D vector contract lowering to...

Nicolas Vasilache via All-commits all-commits at lists.llvm.org
Fri Aug 7 03:21:38 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 3f906c54a2def26ba0c407a309c7c30ce0e0cc83
      https://github.com/llvm/llvm-project/commit/3f906c54a2def26ba0c407a309c7c30ce0e0cc83
  Author: Nicolas Vasilache <ntv at google.com>
  Date:   2020-08-07 (Fri, 07 Aug 2020)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/VectorTransforms.h
    M mlir/include/mlir/Interfaces/VectorInterfaces.td
    M mlir/lib/Dialect/Vector/VectorTransforms.cpp
    M mlir/test/Dialect/Vector/vector-contract-transforms.mlir

  Log Message:
  -----------
  [mlir][Vector] Add 2-D vector contract lowering to ReduceOp

This new pattern mixes vector.transpose and direct lowering to vector.reduce.
This allows more progressive lowering than immediately going to insert/extract and
composes more nicely with other canonicalizations.
This has 2 use cases:
1. for very wide vectors the generated IR may be much smaller
2. when we have a custom lowering for transpose ops we can target it directly
rather than rely LLVM

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




More information about the All-commits mailing list