[all-commits] [llvm/llvm-project] e0b99a: [mlir] Add SubViewOp::getOrCreateRanges and fix fo...

poechsel via All-commits all-commits at lists.llvm.org
Wed May 13 07:14:55 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e0b99a5de4cbf00bfa46d06caf1ebf64a6456537
      https://github.com/llvm/llvm-project/commit/e0b99a5de4cbf00bfa46d06caf1ebf64a6456537
  Author: Nicolas Vasilache <ntv at google.com>
  Date:   2020-05-13 (Wed, 13 May 2020)

  Changed paths:
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.td
    M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
    M mlir/lib/Dialect/StandardOps/IR/Ops.cpp
    M mlir/test/Dialect/Linalg/transform-patterns-matmul-to-vector.mlir
    M mlir/test/Transforms/canonicalize.mlir

  Log Message:
  -----------
  [mlir] Add SubViewOp::getOrCreateRanges and fix folding pattern

The existing implementation of SubViewOp::getRanges relies on all
offsets/sizes/strides to be dynamic values and does not work in
combination with canonicalization. This revision adds a
SubViewOp::getOrCreateRanges to create the missing constants in the
canonicalized case.

This allows reactivating the fused pass with staged pattern
applications.

However another issue surfaces that the SubViewOp verifier is now too
strict to allow folding. The existing folding pattern is turned into a
canonicalization pattern which rewrites memref_cast + subview into
subview + memref_cast.

The transform-patterns-matmul-to-vector can then be reactivated.

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


  Commit: a5d80818fa702876ced0e62bffcd24d3d9bf43b9
      https://github.com/llvm/llvm-project/commit/a5d80818fa702876ced0e62bffcd24d3d9bf43b9
  Author: Pierre Oechsel <pierre.oechsel at gmail.com>
  Date:   2020-05-13 (Wed, 13 May 2020)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/EDSC/Intrinsics.h

  Log Message:
  -----------
  [mlir] [VectorOps] Add missing EDSC intrinsics.

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


Compare: https://github.com/llvm/llvm-project/compare/195de442daba...a5d80818fa70


More information about the All-commits mailing list