-
Notifications
You must be signed in to change notification settings - Fork 12.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[MLIR] Add missing MLIRDialectUtils dep to TilingInterface #84544
[MLIR] Add missing MLIRDialectUtils dep to TilingInterface #84544
Conversation
This fixes a failure when doing a clean build of lib/libMLIRDialectUtils.a only.
@llvm/pr-subscribers-mlir Author: Thomas Preud'homme (RoboTux) ChangesThis fixes a failure when doing a clean build of Full diff: https://github.com/llvm/llvm-project/pull/84544.diff 1 Files Affected:
diff --git a/mlir/lib/Interfaces/CMakeLists.txt b/mlir/lib/Interfaces/CMakeLists.txt
index e7c76e70ed6b5d..d3b7bf65ad3e73 100644
--- a/mlir/lib/Interfaces/CMakeLists.txt
+++ b/mlir/lib/Interfaces/CMakeLists.txt
@@ -101,7 +101,20 @@ add_mlir_library(MLIRSubsetOpInterface
MLIRValueBoundsOpInterface
)
-add_mlir_interface_library(TilingInterface)
+add_mlir_library(MLIRTilingInterface
+ TilingInterface.cpp
+
+ ADDITIONAL_HEADER_DIRS
+ ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
+
+ DEPENDS
+ MLIRTilingInterfaceIncGen
+ MLIRDialectUtils
+
+ LINK_LIBS PUBLIC
+ MLIRIR
+)
+
add_mlir_interface_library(VectorInterfaces)
add_mlir_interface_library(ViewLikeInterface)
|
Ping? |
This change is problematic because it introduces a dependency from |
DialectUtils provide the IteratorType used in TilingInterface's getLoopIteratorTypes() return type(SmallVectorutils::IteratorType). On the other hand AFAIK the ArithDialect dependency is only because of this line: (it also need an extra include of mlir/IR/Builders.h in StaticValueUtils.h and a MLIRDialectUtilsIncGen dependency in MLIRDialectUtils library definition). Could that somehow be made conditional upon ArithDialect being linked transitively or maybe moved to another place? |
If that's the only reason, we should be able to replace the implementation with a call to |
Perfect, I'll make a patch to dissociate UtilsDialect from ArithUtils. |
|
This fixes the following failure when doing a clean build (in particular no .ninja* lying around) of lib/libMLIRTilingInterface.a only: ``` In file included from mlir/include/mlir/Interfaces/TilingInterface.h:17, from mlir/lib/Interfaces/TilingInterface.cpp:13: mlir/include/mlir/Dialect/Utils/StructuredOpsUtils.h:27:10: fatal error: mlir/Dialect/Utils/DialectUtilsEnums.h.inc: No such file or directory ```
This fixes the following failure when doing a clean build (in particular
no .ninja* lying around) of lib/libMLIRTilingInterface.a only: