blob: cf61bf8ff3f954787551c6b9107dbd69a36dfdbd [file] [log] [blame]
set(LLVM_LINK_COMPONENTS
DebugInfoDWARF
DWP
ExecutionEngine
MC
Object
Support
TargetParser
)
set(TARGET_LINK_LIBRARIES
LLVMBOLTCore
LLVMBOLTPasses
LLVMBOLTProfile
LLVMBOLTRuntimeLibs
LLVMBOLTUtils
)
if ("AArch64" IN_LIST LLVM_TARGETS_TO_BUILD)
list(APPEND TARGET_LINK_LIBRARIES LLVMBOLTTargetAArch64)
set(BOLT_AArch64 On)
endif()
if ("X86" IN_LIST LLVM_TARGETS_TO_BUILD)
list(APPEND TARGET_LINK_LIBRARIES LLVMBOLTTargetX86)
set(BOLT_X64 On)
endif()
add_llvm_library(LLVMBOLTRewrite
BinaryPassManager.cpp
BoltDiff.cpp
DWARFRewriter.cpp
ExecutableFileMemoryManager.cpp
MachORewriteInstance.cpp
RewriteInstance.cpp
DISABLE_LLVM_LINK_LLVM_DYLIB
LINK_LIBS
${LLVM_PTHREAD_LIB}
)
target_link_libraries(LLVMBOLTRewrite
PRIVATE
${TARGET_LINK_LIBRARIES}
)
if (DEFINED BOLT_AArch64)
target_compile_definitions(LLVMBOLTRewrite PRIVATE AARCH64_AVAILABLE)
endif()
if (DEFINED BOLT_X64)
target_compile_definitions(LLVMBOLTRewrite PRIVATE X86_AVAILABLE)
endif()