[all-commits] [llvm/llvm-project] f96a86: [mlir][PDL] Define a new PDLInterp::FuncOp operati...

River Riddle via All-commits all-commits at lists.llvm.org
Tue Mar 15 14:56:48 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f96a8675cd29776ca39bb76133ee9167f5001f17
      https://github.com/llvm/llvm-project/commit/f96a8675cd29776ca39bb76133ee9167f5001f17
  Author: River Riddle <riddleriver at gmail.com>
  Date:   2022-03-15 (Tue, 15 Mar 2022)

  Changed paths:
    M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterp.h
    M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
    M mlir/include/mlir/IR/BuiltinOps.td
    M mlir/include/mlir/IR/FunctionImplementation.h
    M mlir/include/mlir/IR/FunctionInterfaces.h
    M mlir/include/mlir/IR/FunctionInterfaces.td
    M mlir/include/mlir/IR/OpBase.td
    M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/PDLInterp/IR/PDLInterp.cpp
    M mlir/lib/IR/BuiltinDialect.cpp
    M mlir/lib/IR/FunctionImplementation.cpp
    M mlir/lib/Rewrite/ByteCode.cpp
    M mlir/test/Dialect/LLVMIR/func.mlir
    M mlir/test/Rewrite/pdl-bytecode.mlir

  Log Message:
  -----------
  [mlir][PDL] Define a new PDLInterp::FuncOp operation and drop uses of FuncOp

Defining our own function operation allows for the PDL interpreter
to be more self contained, and also removes any dependency on FuncOp;
which is moving out of the Builtin dialect.

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


  Commit: ee2c6cd9069fe0d8e7386ce53300e7645e4db792
      https://github.com/llvm/llvm-project/commit/ee2c6cd9069fe0d8e7386ce53300e7645e4db792
  Author: River Riddle <riddleriver at gmail.com>
  Date:   2022-03-15 (Tue, 15 Mar 2022)

  Changed paths:
    M mlir/docs/Tutorials/Toy/Ch-2.md
    M mlir/docs/Tutorials/Toy/Ch-3.md
    M mlir/docs/Tutorials/Toy/Ch-4.md
    M mlir/docs/Tutorials/Toy/Ch-5.md
    M mlir/docs/Tutorials/Toy/Ch-6.md
    M mlir/docs/Tutorials/Toy/Ch-7.md
    M mlir/examples/toy/Ch2/include/toy/Dialect.h
    M mlir/examples/toy/Ch2/include/toy/Ops.td
    M mlir/examples/toy/Ch2/mlir/Dialect.cpp
    M mlir/examples/toy/Ch2/mlir/MLIRGen.cpp
    M mlir/examples/toy/Ch3/include/toy/Dialect.h
    M mlir/examples/toy/Ch3/include/toy/Ops.td
    M mlir/examples/toy/Ch3/mlir/Dialect.cpp
    M mlir/examples/toy/Ch3/mlir/MLIRGen.cpp
    M mlir/examples/toy/Ch3/toyc.cpp
    M mlir/examples/toy/Ch4/include/toy/Dialect.h
    M mlir/examples/toy/Ch4/include/toy/Ops.td
    M mlir/examples/toy/Ch4/mlir/Dialect.cpp
    M mlir/examples/toy/Ch4/mlir/MLIRGen.cpp
    M mlir/examples/toy/Ch4/mlir/ShapeInferencePass.cpp
    M mlir/examples/toy/Ch4/toyc.cpp
    M mlir/examples/toy/Ch5/include/toy/Dialect.h
    M mlir/examples/toy/Ch5/include/toy/Ops.td
    M mlir/examples/toy/Ch5/mlir/Dialect.cpp
    M mlir/examples/toy/Ch5/mlir/LowerToAffineLoops.cpp
    M mlir/examples/toy/Ch5/mlir/MLIRGen.cpp
    M mlir/examples/toy/Ch5/mlir/ShapeInferencePass.cpp
    M mlir/examples/toy/Ch5/toyc.cpp
    M mlir/examples/toy/Ch6/include/toy/Dialect.h
    M mlir/examples/toy/Ch6/include/toy/Ops.td
    M mlir/examples/toy/Ch6/mlir/Dialect.cpp
    M mlir/examples/toy/Ch6/mlir/LowerToAffineLoops.cpp
    M mlir/examples/toy/Ch6/mlir/MLIRGen.cpp
    M mlir/examples/toy/Ch6/mlir/ShapeInferencePass.cpp
    M mlir/examples/toy/Ch6/toyc.cpp
    M mlir/examples/toy/Ch7/include/toy/Dialect.h
    M mlir/examples/toy/Ch7/include/toy/Ops.td
    M mlir/examples/toy/Ch7/mlir/Dialect.cpp
    M mlir/examples/toy/Ch7/mlir/LowerToAffineLoops.cpp
    M mlir/examples/toy/Ch7/mlir/MLIRGen.cpp
    M mlir/examples/toy/Ch7/mlir/ShapeInferencePass.cpp
    M mlir/examples/toy/Ch7/toyc.cpp
    M mlir/test/Examples/Toy/Ch2/codegen.toy
    M mlir/test/Examples/Toy/Ch2/invalid.mlir
    M mlir/test/Examples/Toy/Ch2/scalar.toy
    M mlir/test/Examples/Toy/Ch3/codegen.toy
    M mlir/test/Examples/Toy/Ch3/invalid.mlir
    M mlir/test/Examples/Toy/Ch3/scalar.toy
    M mlir/test/Examples/Toy/Ch3/transpose_transpose.toy
    M mlir/test/Examples/Toy/Ch3/trivial_reshape.toy
    M mlir/test/Examples/Toy/Ch4/codegen.toy
    M mlir/test/Examples/Toy/Ch4/invalid.mlir
    M mlir/test/Examples/Toy/Ch4/scalar.toy
    M mlir/test/Examples/Toy/Ch4/shape_inference.mlir
    M mlir/test/Examples/Toy/Ch4/transpose_transpose.toy
    M mlir/test/Examples/Toy/Ch4/trivial_reshape.toy
    M mlir/test/Examples/Toy/Ch5/affine-lowering.mlir
    M mlir/test/Examples/Toy/Ch5/codegen.toy
    M mlir/test/Examples/Toy/Ch5/invalid.mlir
    M mlir/test/Examples/Toy/Ch5/shape_inference.mlir
    M mlir/test/Examples/Toy/Ch5/transpose_transpose.toy
    M mlir/test/Examples/Toy/Ch5/trivial_reshape.toy
    M mlir/test/Examples/Toy/Ch6/affine-lowering.mlir
    M mlir/test/Examples/Toy/Ch6/codegen.toy
    M mlir/test/Examples/Toy/Ch6/invalid.mlir
    M mlir/test/Examples/Toy/Ch6/llvm-lowering.mlir
    M mlir/test/Examples/Toy/Ch6/scalar.toy
    M mlir/test/Examples/Toy/Ch6/shape_inference.mlir
    M mlir/test/Examples/Toy/Ch6/transpose_transpose.toy
    M mlir/test/Examples/Toy/Ch6/trivial_reshape.toy
    M mlir/test/Examples/Toy/Ch7/affine-lowering.mlir
    M mlir/test/Examples/Toy/Ch7/codegen.toy
    M mlir/test/Examples/Toy/Ch7/invalid.mlir
    M mlir/test/Examples/Toy/Ch7/llvm-lowering.mlir
    M mlir/test/Examples/Toy/Ch7/scalar.toy
    M mlir/test/Examples/Toy/Ch7/shape_inference.mlir
    M mlir/test/Examples/Toy/Ch7/struct-codegen.toy
    M mlir/test/Examples/Toy/Ch7/struct-opt.mlir
    M mlir/test/Examples/Toy/Ch7/transpose_transpose.toy
    M mlir/test/Examples/Toy/Ch7/trivial_reshape.toy

  Log Message:
  -----------
  [mlir][toy] Define a FuncOp operation in toy and drop the dependence on FuncOp

FuncOp is being moved out of the builtin dialect, and defining a custom
toy operation showcases various aspects of defining function-like operation
(e.g. inlining, passes, etc.).

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


Compare: https://github.com/llvm/llvm-project/compare/e9c9ee9fe694...ee2c6cd9069f


More information about the All-commits mailing list