[all-commits] [llvm/llvm-project] 7ce1e7: [mlir][NFC] Move the operation interfaces out of A...

River Riddle via All-commits all-commits at lists.llvm.org
Tue Mar 10 12:48:45 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 7ce1e7ab075abf64409bc135aa9a4b0bec59fdf7
      https://github.com/llvm/llvm-project/commit/7ce1e7ab075abf64409bc135aa9a4b0bec59fdf7
  Author: River Riddle <riddleriver at gmail.com>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

  Changed paths:
    M mlir/docs/ShapeInference.md
    M mlir/docs/Tutorials/Toy/Ch-4.md
    M mlir/examples/toy/Ch4/CMakeLists.txt
    M mlir/examples/toy/Ch4/include/toy/Ops.td
    M mlir/examples/toy/Ch5/CMakeLists.txt
    M mlir/examples/toy/Ch5/include/toy/Ops.td
    M mlir/examples/toy/Ch6/CMakeLists.txt
    M mlir/examples/toy/Ch6/include/toy/Ops.td
    M mlir/examples/toy/Ch7/CMakeLists.txt
    M mlir/examples/toy/Ch7/include/toy/Ops.td
    R mlir/include/mlir/Analysis/CMakeLists.txt
    R mlir/include/mlir/Analysis/CallInterfaces.h
    R mlir/include/mlir/Analysis/CallInterfaces.td
    R mlir/include/mlir/Analysis/ControlFlowInterfaces.h
    R mlir/include/mlir/Analysis/ControlFlowInterfaces.td
    R mlir/include/mlir/Analysis/InferTypeOpInterface.h
    R mlir/include/mlir/Analysis/InferTypeOpInterface.td
    M mlir/include/mlir/CMakeLists.txt
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/SPIRV/SPIRVControlFlowOps.td
    M mlir/include/mlir/Dialect/SPIRV/SPIRVOps.h
    M mlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.h
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.td
    M mlir/include/mlir/IR/Function.h
    A mlir/include/mlir/Interfaces/CMakeLists.txt
    A mlir/include/mlir/Interfaces/CallInterfaces.h
    A mlir/include/mlir/Interfaces/CallInterfaces.td
    A mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    A mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    A mlir/include/mlir/Interfaces/InferTypeOpInterface.h
    A mlir/include/mlir/Interfaces/InferTypeOpInterface.td
    M mlir/lib/Analysis/CMakeLists.txt
    M mlir/lib/Analysis/CallGraph.cpp
    R mlir/lib/Analysis/ControlFlowInterfaces.cpp
    R mlir/lib/Analysis/InferTypeOpInterface.cpp
    M mlir/lib/CMakeLists.txt
    M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/SPIRVOps.cpp
    M mlir/lib/Dialect/StandardOps/CMakeLists.txt
    M mlir/lib/IR/CMakeLists.txt
    A mlir/lib/Interfaces/CMakeLists.txt
    A mlir/lib/Interfaces/CallInterfaces.cpp
    A mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    A mlir/lib/Interfaces/InferTypeOpInterface.cpp
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/lib/IR/CMakeLists.txt
    M mlir/test/lib/TestDialect/CMakeLists.txt
    M mlir/test/lib/TestDialect/TestDialect.h
    M mlir/test/lib/TestDialect/TestOps.td

  Log Message:
  -----------
  [mlir][NFC] Move the operation interfaces out of Analysis/ and into a new Interfaces/ directory.

The interfaces themselves aren't really analyses, they may be used by analyses though. Having them in Analysis can also create cyclic dependencies if an analysis depends on a specific dialect, that also provides one of the interfaces.

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


  Commit: 153720a0a567bf37f51b465a093790ebd3555549
      https://github.com/llvm/llvm-project/commit/153720a0a567bf37f51b465a093790ebd3555549
  Author: River Riddle <riddleriver at gmail.com>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

  Changed paths:
    M mlir/examples/toy/Ch2/CMakeLists.txt
    M mlir/examples/toy/Ch2/include/toy/Dialect.h
    M mlir/examples/toy/Ch3/CMakeLists.txt
    M mlir/examples/toy/Ch3/include/toy/Dialect.h
    M mlir/examples/toy/Ch4/CMakeLists.txt
    M mlir/examples/toy/Ch4/include/toy/Dialect.h
    M mlir/examples/toy/Ch5/CMakeLists.txt
    M mlir/examples/toy/Ch5/include/toy/Dialect.h
    M mlir/examples/toy/Ch6/CMakeLists.txt
    M mlir/examples/toy/Ch6/include/toy/Dialect.h
    M mlir/examples/toy/Ch7/CMakeLists.txt
    M mlir/examples/toy/Ch7/include/toy/Dialect.h
    M mlir/include/mlir/Dialect/AffineOps/AffineOps.h
    M mlir/include/mlir/Dialect/FxpMathOps/FxpMathOps.h
    M mlir/include/mlir/Dialect/GPU/GPUDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLDialect.h
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
    M mlir/include/mlir/Dialect/LoopOps/LoopOps.h
    M mlir/include/mlir/Dialect/QuantOps/QuantOps.h
    M mlir/include/mlir/Dialect/SPIRV/SPIRVOps.h
    M mlir/include/mlir/Dialect/Shape/IR/Shape.h
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.h
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.td
    M mlir/include/mlir/Dialect/VectorOps/VectorOps.h
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/OpDefinition.h
    R mlir/include/mlir/IR/SideEffects.td
    M mlir/include/mlir/Interfaces/CMakeLists.txt
    A mlir/include/mlir/Interfaces/SideEffects.h
    A mlir/include/mlir/Interfaces/SideEffects.td
    M mlir/lib/Dialect/AffineOps/CMakeLists.txt
    M mlir/lib/Dialect/FxpMathOps/CMakeLists.txt
    M mlir/lib/Dialect/GPU/CMakeLists.txt
    M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/LoopOps/CMakeLists.txt
    M mlir/lib/Dialect/QuantOps/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/CMakeLists.txt
    M mlir/lib/Dialect/Shape/CMakeLists.txt
    M mlir/lib/Dialect/StandardOps/CMakeLists.txt
    M mlir/lib/Dialect/VectorOps/CMakeLists.txt
    M mlir/lib/IR/CMakeLists.txt
    M mlir/lib/IR/Operation.cpp
    M mlir/lib/Interfaces/CMakeLists.txt
    A mlir/lib/Interfaces/SideEffects.cpp
    M mlir/lib/Transforms/LoopInvariantCodeMotion.cpp
    M mlir/test/lib/TestDialect/TestDialect.h
    M mlir/test/lib/TestDialect/TestOps.td
    M mlir/test/mlir-tblgen/op-side-effects.td

  Log Message:
  -----------
  [mlir][NFC] Move the interfaces and traits for side effects out of IR/ to Interfaces/

Summary:
Interfaces/ is the designated directory for these types of interfaces, and also removes the need for including them directly in IR/.

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


Compare: https://github.com/llvm/llvm-project/compare/c8f0d27ef37c...153720a0a567


More information about the All-commits mailing list