blob: cf27486ce3424e080ba00d8ae2dc0921d6900122 [file] [log] [blame]
################################################################################
# Autogenerated by build_tools/bazel_to_cmake/bazel_to_cmake.py from #
# compiler/plugins/target/LLVMCPU/BUILD.bazel #
# #
# Use iree_cmake_extra_content from iree/build_defs.oss.bzl to add arbitrary #
# CMake-only content. #
# #
# To disable autogeneration for this file entirely, delete this header. #
################################################################################
iree_add_all_subdirs()
iree_compiler_register_plugin(
PLUGIN_ID
hal_target_llvm_cpu
TARGET
::LLVMCPU
)
iree_cc_library(
NAME
LLVMCPU
HDRS
"LibraryBuilder.h"
SRCS
"LLVMCPUTarget.cpp"
"LibraryBuilder.cpp"
DEPS
::LLVMIRPasses
::LLVMTargetOptions
::LinkerTool
::StaticLibraryGenerator
IREELLVMCPUTargetDeps
IREELinalgTransformDialect
LLVMAnalysis
LLVMBitReader
LLVMBitWriter
LLVMCore
LLVMLinker
LLVMSupport
LLVMTargetParser
MLIRArmNeonDialect
MLIRArmSMEDialect
MLIRArmSMEToLLVMIRTranslation
MLIRBuiltinToLLVMIRTranslation
MLIRIR
MLIRLLVMDialect
MLIRLLVMToLLVMIRTranslation
MLIRPDLDialect
MLIRPDLInterpDialect
MLIRSupport
MLIRTargetLLVMIRExport
MLIRTransformDialect
iree::compiler::Codegen::Common
iree::compiler::Codegen::Dialect::Codegen::IR::IREECodegenDialect
iree::compiler::Codegen::LLVMCPU
iree::compiler::Codegen::Utils
iree::compiler::Dialect::HAL::Target
iree::compiler::Dialect::HAL::Target::Devices
iree::compiler::Dialect::HAL::Utils::LLVMLinkerUtils
iree::compiler::Dialect::LinalgExt::IR
iree::compiler::Dialect::Util::IR
iree::compiler::PluginAPI
iree::compiler::Utils
iree::compiler::plugins::target::LLVMCPU::Builtins
PUBLIC
)
iree_cc_library(
NAME
LLVMIRPasses
HDRS
"LLVMIRPasses.h"
SRCS
"LLVMIRPasses.cpp"
DEPS
::LLVMTargetOptions
LLVMAnalysis
LLVMCore
LLVMInstrumentation
LLVMMC
LLVMPasses
LLVMSupport
LLVMTarget
LLVMTargetParser
MLIRSupport
PUBLIC
)
iree_cc_library(
NAME
LLVMTargetOptions
HDRS
"LLVMTargetOptions.h"
SRCS
"LLVMTargetOptions.cpp"
DEPS
LLVMAnalysis
LLVMMC
LLVMPasses
LLVMSupport
LLVMTarget
LLVMTargetParser
MLIRIR
iree::compiler::Utils
PUBLIC
)
iree_cc_library(
NAME
LinkerTool
HDRS
"LinkerTool.h"
SRCS
"LinkerTool.cpp"
DEPS
::LLVMTargetOptions
LLVMCore
LLVMSupport
LLVMTargetParser
MLIRSupport
iree::compiler::Utils
iree::compiler::plugins::target::LLVMCPU::internal::LinkerTools_internal
PUBLIC
)
iree_cc_library(
NAME
LinkerTool_hdrs
HDRS
"LinkerTool.h"
DEPS
::LLVMTargetOptions
LLVMCore
LLVMSupport
LLVMTargetParser
MLIRSupport
PUBLIC
)
iree_cc_library(
NAME
StaticLibraryGenerator
HDRS
"StaticLibraryGenerator.h"
SRCS
"StaticLibraryGenerator.cpp"
DEPS
LLVMSupport
PUBLIC
)
### BAZEL_TO_CMAKE_PRESERVES_ALL_CONTENT_BELOW_THIS_LINE ###
add_library(IREELLVMCPUTargetDeps INTERFACE)
function(_add_optional_llvm_target_deps target)
# Key off of the CodeGen target and then include the rest.
# Note that for LLVM DYLIB builds, we just key off of the presence of the
# static CodeGen target and iree_redirect_llvm_dylib_deps will replace it
# with the dylib accordingly (it is just a check to see if we have compiled in
# support for the target).
if(TARGET "LLVM${target}CodeGen")
set(_target_deps
"LLVM${target}AsmParser"
"LLVM${target}CodeGen"
"LLVM${target}Desc"
"LLVM${target}Info"
)
iree_redirect_llvm_dylib_deps(_target_deps)
target_link_libraries(IREELLVMCPUTargetDeps INTERFACE ${_target_deps})
endif()
endfunction()
# This is just the CPU backends that we hard-link to. Single-target backends
# like CUDA and ROCM bring their dependencies explicitly.
# TODO: More archaeology and tieing this to explicit top-level configuration
# of backends.
_add_optional_llvm_target_deps(AArch64)
_add_optional_llvm_target_deps(ARM)
_add_optional_llvm_target_deps(RISCV)
_add_optional_llvm_target_deps(WebAssembly)
_add_optional_llvm_target_deps(X86)