[all-commits] [llvm/llvm-project] 0fb4a2: [mlir] fix shared-lib build fallout of e2310704d89...

ftynse via All-commits all-commits at lists.llvm.org
Mon Mar 15 05:42:01 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0fb4a201c098c38e6b95196b718a24ee33119d2a
      https://github.com/llvm/llvm-project/commit/0fb4a201c098c38e6b95196b718a24ee33119d2a
  Author: Alex Zinenko <zinenko at google.com>
  Date:   2021-03-15 (Mon, 15 Mar 2021)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/EDSC/Intrinsics.h
    M mlir/include/mlir/Dialect/MemRef/IR/MemRef.h
    M mlir/include/mlir/Dialect/StandardOps/EDSC/Builders.h
    M mlir/include/mlir/Dialect/StandardOps/IR/Ops.h
    M mlir/include/mlir/Dialect/StandardOps/Utils/Utils.h
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
    M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/StandardOps/CMakeLists.txt
    M mlir/lib/Dialect/StandardOps/EDSC/Builders.cpp
    M mlir/lib/Dialect/StandardOps/Utils/Utils.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/test/Bindings/Python/dialects/std.py

  Log Message:
  -----------
  [mlir] fix shared-lib build fallout of e2310704d890ad252aeb1ca28b4b84d29514b1d1

The patch in question broke the build with shared libraries due to
missing dependencies, one of which would have been circular between
MLIRStandard and MLIRMemRef if added. Fix this by moving more code
around and swapping the dependency direction. MLIRMemRef now depends on
MLIRStandard, but MLIRStandard does _not_ depend on MLIRMemRef.
Arguably, this is the right direction anyway since numerous libraries
depend on MLIRStandard and don't necessarily need to depend on
MLIRMemref.

Other otable changes include:
- some EDSC code is moved inline to MemRef/EDSC/Intrinsics.h because it
  creates MemRef dialect operations;
- a utility function related to shape moved to BuiltinTypes.h/cpp
  because it only realtes to shaped types and not any particular dialect
  (standard dialect is erroneously believed to contain MemRefType);
- a Python test for the standard dialect is disabled completely because
  the ops it tests moved to the new MemRef dialect, but it is not
  exposed to Python bindings, and the change for that is non-trivial.




More information about the All-commits mailing list