[all-commits] [llvm/llvm-project] cab8dd: [mlir] Start splitting the `tensor` dialect out of...

Sean Silva via All-commits all-commits at lists.llvm.org
Fri Dec 11 14:02:36 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: cab8dda90f48e15ee94b0d55ceac5b6a812e4743
      https://github.com/llvm/llvm-project/commit/cab8dda90f48e15ee94b0d55ceac5b6a812e4743
  Author: Sean Silva <silvasean at google.com>
  Date:   2020-12-11 (Fri, 11 Dec 2020)

  Changed paths:
    M mlir/include/mlir/Dialect/CMakeLists.txt
    M mlir/include/mlir/Dialect/Linalg/EDSC/FoldedIntrinsics.h
    M mlir/include/mlir/Dialect/StandardOps/EDSC/Intrinsics.h
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.td
    A mlir/include/mlir/Dialect/Tensor/CMakeLists.txt
    A mlir/include/mlir/Dialect/Tensor/IR/CMakeLists.txt
    A mlir/include/mlir/Dialect/Tensor/IR/Tensor.h
    A mlir/include/mlir/Dialect/Tensor/IR/TensorBase.td
    A mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
    A mlir/include/mlir/Dialect/Tensor/Transforms/CMakeLists.txt
    A mlir/include/mlir/Dialect/Tensor/Transforms/Passes.h
    A mlir/include/mlir/Dialect/Tensor/Transforms/Passes.td
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/InitAllPasses.h
    M mlir/lib/Conversion/ShapeToStandard/ConvertShapeConstraints.cpp
    M mlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp
    M mlir/lib/Dialect/CMakeLists.txt
    M mlir/lib/Dialect/StandardOps/CMakeLists.txt
    M mlir/lib/Dialect/StandardOps/IR/Ops.cpp
    M mlir/lib/Dialect/StandardOps/Transforms/Bufferize.cpp
    A mlir/lib/Dialect/Tensor/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/IR/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
    A mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    A mlir/lib/Dialect/Tensor/Transforms/Bufferize.cpp
    A mlir/lib/Dialect/Tensor/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Transforms/PassDetail.h
    M mlir/lib/Transforms/Utils/FoldUtils.cpp
    M mlir/test/Conversion/ShapeToStandard/convert-shape-constraints.mlir
    M mlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir
    M mlir/test/Dialect/Linalg/fusion-tensor.mlir
    M mlir/test/Dialect/Standard/bufferize.mlir
    M mlir/test/Dialect/Standard/canonicalize.mlir
    A mlir/test/Dialect/Tensor/bufferize.mlir
    A mlir/test/Dialect/Tensor/canonicalize.mlir
    A mlir/test/Dialect/Tensor/invalid.mlir
    A mlir/test/Dialect/Tensor/ops.mlir
    M mlir/test/IR/core-ops.mlir
    M mlir/test/IR/invalid-ops.mlir
    M mlir/test/Transforms/canonicalize.mlir
    M mlir/test/Transforms/constant-fold.mlir
    M mlir/utils/vim/syntax/mlir.vim

  Log Message:
  -----------
  [mlir] Start splitting the `tensor` dialect out of `std`.

This starts by moving `std.extract_element` to `tensor.extract` (this
mirrors the naming of `vector.extract`).

Curiously, `std.extract_element` supposedly works on vectors as well,
and this patch removes that functionality. I would tend to do that in
separate patch, but I couldn't find any downstream users relying on
this, and the fact that we have `vector.extract` made it seem safe
enough to lump in here.

This also sets up the `tensor` dialect as a dependency of the `std`
dialect, as some ops that currently live in `std` depend on
`tensor.extract` via their canonicalization patterns.

Part of RFC: https://llvm.discourse.group/t/rfc-split-the-tensor-dialect-from-std/2347/2

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




More information about the All-commits mailing list