[all-commits] [llvm/llvm-project] 6e2b26: Promote transpose from linalg to standard dialect

Benjamin Kramer via All-commits all-commits at lists.llvm.org
Mon Oct 5 02:13:42 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 6e2b267d1c85ce0de0e91eb446831607896a0f2b
      https://github.com/llvm/llvm-project/commit/6e2b267d1c85ce0de0e91eb446831607896a0f2b
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2020-10-05 (Mon, 05 Oct 2020)

  Changed paths:
    M mlir/docs/Dialects/Linalg.md
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.td
    M mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
    M mlir/lib/Conversion/LinalgToStandard/LinalgToStandard.cpp
    M mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/StandardOps/IR/Ops.cpp
    M mlir/lib/Dialect/Vector/VectorOps.cpp
    M mlir/test/Conversion/StandardToLLVM/standard-to-llvm.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/Linalg/llvm.mlir
    M mlir/test/Dialect/Linalg/roundtrip.mlir
    M mlir/test/Dialect/Linalg/standard.mlir
    M mlir/test/Dialect/Standard/invalid.mlir

  Log Message:
  -----------
  Promote transpose from linalg to standard dialect

While affine maps are part of the builtin memref type, there is very
limited support for manipulating them in the standard dialect. Add
transpose to the set of ops to complement the existing view/subview ops.
This is a metadata transformation that encodes the transpose into the
strides of a memref.

I'm planning to use this when lowering operations on strided memrefs,
using the transpose to remove the stride without adding a dependency on
linalg dialect.

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




More information about the All-commits mailing list