[PATCH] D74302: [mlir][EDSC] Almost NFC - Refactor and untangle EDSC dependencies

Nicolas Vasilache via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 9 20:51:52 PST 2020


nicolasvasilache created this revision.
Herald added subscribers: llvm-commits, Joonsoo, liufengdb, aartbik, herhut, lucyrfox, mgester, arpith-jacob, csigg, antiagainst, shauheen, burmako, jpienaar, rriddle, mehdi_amini, mgorny.
Herald added a reviewer: mravishankar.
Herald added a project: LLVM.
nicolasvasilache added reviewers: rriddle, ftynse, jpienaar, mehdi_amini.

This CL refactors EDSCs to layer them better and break unnecessary
dependencies. After this refactoring, the top-level EDSC target only
depends on IR but not on Dialects anymore and each dialect has its
own EDSC directory.

This simplifies the layering and breaks cyclic dependencies.
In particular, the declarative builder + folder are made explicit and
are now confined to Linalg.

As the refactoring occurred, certain classes and abstractions that were not
paying for themselves have been removed.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D74302

Files:
  mlir/docs/EDSC.md
  mlir/include/mlir/Dialect/AffineOps/EDSC/Builders.h
  mlir/include/mlir/Dialect/AffineOps/EDSC/Intrinsics.h
  mlir/include/mlir/Dialect/Linalg/EDSC/Builders.h
  mlir/include/mlir/Dialect/Linalg/EDSC/Intrinsics.h
  mlir/include/mlir/Dialect/LoopOps/EDSC/Builders.h
  mlir/include/mlir/Dialect/StandardOps/EDSC/Builders.h
  mlir/include/mlir/Dialect/StandardOps/EDSC/Intrinsics.h
  mlir/include/mlir/Dialect/Utils/StructuredOpsUtils.h
  mlir/include/mlir/EDSC/Builders.h
  mlir/include/mlir/EDSC/Helpers.h
  mlir/include/mlir/EDSC/Intrinsics.h
  mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
  mlir/lib/Conversion/VectorToLoops/ConvertVectorToLoops.cpp
  mlir/lib/Dialect/AffineOps/CMakeLists.txt
  mlir/lib/Dialect/AffineOps/EDSC/Builders.cpp
  mlir/lib/Dialect/GPU/Transforms/MemoryPromotion.cpp
  mlir/lib/Dialect/Linalg/EDSC/Builders.cpp
  mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
  mlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
  mlir/lib/Dialect/Linalg/Transforms/LinalgTransforms.cpp
  mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
  mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
  mlir/lib/Dialect/Linalg/Utils/Utils.cpp
  mlir/lib/Dialect/LoopOps/CMakeLists.txt
  mlir/lib/Dialect/LoopOps/EDSC/Builders.cpp
  mlir/lib/Dialect/StandardOps/CMakeLists.txt
  mlir/lib/Dialect/StandardOps/EDSC/Builders.cpp
  mlir/lib/Dialect/StandardOps/EDSC/Intrinsics.cpp
  mlir/lib/EDSC/Builders.cpp
  mlir/lib/EDSC/CMakeLists.txt
  mlir/lib/EDSC/Helpers.cpp
  mlir/lib/EDSC/Intrinsics.cpp
  mlir/test/EDSC/builder-api-test.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D74302.243471.patch
Type: text/x-patch
Size: 163542 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200210/96c080b2/attachment.bin>


More information about the llvm-commits mailing list