Skip to content

Commit

Permalink
[mlir] NFC: fix dependence of (Tensor|Linalg|MemRef|Complex) dialects…
Browse files Browse the repository at this point in the history
… on LLVM Dialect and LLVM Core in CMake build (llvm#104832)

This change removes dependencies declared as either 'LINK_LIBS' or
'LINK_COMPONENTS' across several MLIR libraries. The removed
dependencies appear
to be incorrect and may have been required in older versions of the
project.
These dependencies cause many high level dialects to have transitive
dependence on the LLVM dialect and the LLVM 'Core' library
('llvm/lib/IR').

Note that if using the 'Ninja' CMake generator, one can inspect the
dependencies
(including all transitive libraries) of any given MLIR target but using
the command `ninja -C <build dir> -t browse` and navigating to the
library
of interest in a web browser.
  • Loading branch information
christopherbate authored Aug 20, 2024
1 parent ea8bb4d commit 43b5085
Show file tree
Hide file tree
Showing 12 changed files with 5 additions and 30 deletions.
3 changes: 0 additions & 3 deletions mlir/lib/Conversion/AffineToStandard/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@ add_mlir_conversion_library(MLIRAffineToStandard
DEPENDS
MLIRConversionPassIncGen

LINK_COMPONENTS
Core

LINK_LIBS PUBLIC
MLIRAffineDialect
MLIRAffineTransforms
Expand Down
6 changes: 1 addition & 5 deletions mlir/lib/Conversion/ControlFlowToSCF/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,7 @@ add_mlir_conversion_library(MLIRControlFlowToSCF
${MLIR_MAIN_INCLUDE_DIR}/mlir/Conversion/ControlFlowToSCF

DEPENDS
MLIRConversionPassIncGen
intrinsics_gen

LINK_COMPONENTS
Core
MLIRConversionPassIncGen

LINK_LIBS PUBLIC
MLIRAnalysis
Expand Down
1 change: 0 additions & 1 deletion mlir/lib/Conversion/ControlFlowToSCF/ControlFlowToSCF.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
#include "mlir/Dialect/ControlFlow/IR/ControlFlow.h"
#include "mlir/Dialect/ControlFlow/IR/ControlFlowOps.h"
#include "mlir/Dialect/Func/IR/FuncOps.h"
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
#include "mlir/Dialect/SCF/IR/SCF.h"
#include "mlir/Dialect/UB/IR/UBOps.h"
#include "mlir/Pass/Pass.h"
Expand Down
5 changes: 1 addition & 4 deletions mlir/lib/Conversion/SCFToControlFlow/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,7 @@ add_mlir_conversion_library(MLIRSCFToControlFlow
${MLIR_MAIN_INCLUDE_DIR}/mlir/Conversion/SCFToControlFlow

DEPENDS
MLIRConversionPassIncGen

LINK_COMPONENTS
Core
MLIRConversionPassIncGen

LINK_LIBS PUBLIC
MLIRArithDialect
Expand Down
5 changes: 2 additions & 3 deletions mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@

#include "mlir/Dialect/Arith/IR/Arith.h"
#include "mlir/Dialect/ControlFlow/IR/ControlFlowOps.h"
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
#include "mlir/Dialect/SCF/IR/SCF.h"
#include "mlir/Dialect/SCF/Transforms/Transforms.h"
#include "mlir/IR/Builders.h"
Expand Down Expand Up @@ -379,8 +378,8 @@ LogicalResult ForLowering::matchAndRewrite(ForOp forOp,
// llvm.loop_annotation attribute.
SmallVector<NamedAttribute> llvmAttrs;
llvm::copy_if(forOp->getAttrs(), std::back_inserter(llvmAttrs),
[](auto attr) {
return isa<LLVM::LLVMDialect>(attr.getValue().getDialect());
[](NamedAttribute attr) {
return attr.getValue().getDialect().getNamespace() == "llvm";
});
condBranchOp->setDiscardableAttrs(llvmAttrs);
// The result of the loop operation is the values of the condition block
Expand Down
4 changes: 0 additions & 4 deletions mlir/lib/Conversion/VectorToSCF/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,8 @@ add_mlir_conversion_library(MLIRVectorToSCF
ADDITIONAL_HEADER_DIRS
${MLIR_MAIN_INCLUDE_DIR}/mlir/Conversion/VectorToSCF

LINK_COMPONENTS
Core

LINK_LIBS PUBLIC
MLIRArithDialect
MLIRLLVMDialect
MLIRMemRefDialect
MLIRTransforms
MLIRVectorDialect
Expand Down
1 change: 0 additions & 1 deletion mlir/lib/Dialect/Affine/Transforms/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,5 @@ add_mlir_dialect_library(MLIRAffineTransforms
MLIRValueBoundsOpInterface
MLIRVectorDialect
MLIRVectorUtils
MLIRVectorToLLVM
)

1 change: 0 additions & 1 deletion mlir/lib/Dialect/Complex/IR/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ add_mlir_dialect_library(MLIRComplexDialect
MLIRComplexAttributesIncGen

LINK_LIBS PUBLIC
MLIRArithAttrToLLVMConversion
MLIRArithDialect
MLIRDialect
MLIRInferTypeOpInterface
Expand Down
2 changes: 0 additions & 2 deletions mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ add_mlir_dialect_library(MLIRLinalgTransforms
MLIRDestinationStyleOpInterface
MLIRDialectUtils
MLIRFuncDialect
MLIRFuncToLLVM
MLIRFuncTransforms
MLIRIndexDialect
MLIRInferTypeOpInterface
Expand All @@ -87,6 +86,5 @@ add_mlir_dialect_library(MLIRLinalgTransforms
MLIRVectorDialect
MLIRVectorTransforms
MLIRVectorUtils
MLIRX86VectorTransforms
MLIRVectorToSCF
)
3 changes: 0 additions & 3 deletions mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@ add_mlir_dialect_library(MLIRMemRefDialect
DEPENDS
MLIRMemRefOpsIncGen

LINK_COMPONENTS
Core

LINK_LIBS PUBLIC
MLIRArithDialect
MLIRArithUtils
Expand Down
1 change: 1 addition & 0 deletions mlir/lib/Dialect/MemRef/TransformOps/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@ add_mlir_dialect_library(MLIRMemRefTransformOps
MLIRNVGPUDialect
MLIRTransformDialect
MLIRVectorDialect
MLIRVectorTransforms
)
3 changes: 0 additions & 3 deletions mlir/lib/Dialect/Tensor/IR/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,6 @@ add_mlir_dialect_library(MLIRTensorDialect
DEPENDS
MLIRTensorOpsIncGen

LINK_COMPONENTS
Core

LINK_LIBS PUBLIC
MLIRAffineDialect
MLIRArithDialect
Expand Down

0 comments on commit 43b5085

Please sign in to comment.