This patch enables the MarkDeclareTarget for CIR by adding the pass to the lowerings and attaching the declare target interface to the cir::FuncOp. The MarkDeclareTarget is also generalized to work on the FunctionOpInterface instead of func::Op since it needs to be able to handle cir::FuncOp as well. Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
73 lines
1.3 KiB
CMake
73 lines
1.3 KiB
CMake
set(
|
|
LLVM_LINK_COMPONENTS
|
|
Core
|
|
Support
|
|
)
|
|
|
|
get_property(dialect_libs GLOBAL PROPERTY MLIR_DIALECT_LIBS)
|
|
|
|
add_clang_library(clangCIR
|
|
CIRGenerator.cpp
|
|
CIRGenAsm.cpp
|
|
CIRGenAtomic.cpp
|
|
CIRGenBuilder.cpp
|
|
CIRGenBuiltin.cpp
|
|
CIRGenBuiltinAArch64.cpp
|
|
CIRGenBuiltinAMDGPU.cpp
|
|
CIRGenAMDGPU.cpp
|
|
CIRGenBuiltinRISCV.cpp
|
|
CIRGenBuiltinX86.cpp
|
|
CIRGenCall.cpp
|
|
CIRGenClass.cpp
|
|
CIRGenCleanup.cpp
|
|
CIRGenCoroutine.cpp
|
|
CIRGenCUDANV.cpp
|
|
CIRGenCUDARuntime.cpp
|
|
CIRGenCXX.cpp
|
|
CIRGenCXXABI.cpp
|
|
CIRGenDecl.cpp
|
|
CIRGenDeclCXX.cpp
|
|
CIRGenDeclOpenACC.cpp
|
|
CIRGenDeclOpenMP.cpp
|
|
CIRGenException.cpp
|
|
CIRGenExpr.cpp
|
|
CIRGenExprAggregate.cpp
|
|
CIRGenExprComplex.cpp
|
|
CIRGenExprConstant.cpp
|
|
CIRGenExprCXX.cpp
|
|
CIRGenExprScalar.cpp
|
|
CIRGenFunction.cpp
|
|
CIRGenItaniumCXXABI.cpp
|
|
CIRGenModule.cpp
|
|
CIRGenOpenACC.cpp
|
|
CIRGenOpenACCClause.cpp
|
|
CIRGenOpenACCRecipe.cpp
|
|
CIRGenOpenMPClause.cpp
|
|
CIRGenPointerAuth.cpp
|
|
CIRGenRecordLayoutBuilder.cpp
|
|
CIRGenStmt.cpp
|
|
CIRGenStmtOpenACC.cpp
|
|
CIRGenStmtOpenACCLoop.cpp
|
|
CIRGenStmtOpenMP.cpp
|
|
CIRGenTypes.cpp
|
|
CIRGenVTables.cpp
|
|
TargetInfo.cpp
|
|
Targets/AMDGPU.cpp
|
|
|
|
DEPENDS
|
|
MLIRCIR
|
|
MLIRCIROpInterfacesIncGen
|
|
${dialect_libs}
|
|
|
|
LINK_LIBS
|
|
clangAST
|
|
clangBasic
|
|
clangLex
|
|
${dialect_libs}
|
|
CIROpenACCSupport
|
|
CIROpenMPSupport
|
|
MLIRCIR
|
|
MLIRCIRInterfaces
|
|
MLIRTargetLLVMIRImport
|
|
)
|