endif()
endif()
+# This provides the implementation of MVT and LLT.
+# Be careful to append deps on this, since Targets' tablegens depend on this.
+add_llvm_component_library(LLVMCodeGenTypes
+ LowLevelType.cpp
+ PARTIAL_SOURCES_INTENDED
+
+ LINK_COMPONENTS
+ Support
+ )
+
add_llvm_component_library(LLVMCodeGen
AggressiveAntiDepBreaker.cpp
AllocationOrder.cpp
LLVMTargetMachine.cpp
LocalStackSlotAllocation.cpp
LoopTraversal.cpp
- LowLevelType.cpp
LowLevelTypeUtils.cpp
LowerEmuTLS.cpp
MachineBasicBlock.cpp
Analysis
BitReader
BitWriter
+ CodeGenTypes
Core
MC
ObjCARC
features = ["-header_modules"],
strip_include_prefix = "utils/TableGen",
deps = [
- ":CodeGen",
+ ":CodeGenTypes",
":Support",
":TableGen",
":config",
copts = llvm_copts,
stamp = 0,
deps = [
- ":CodeGen",
+ ":CodeGenTypes",
":Support",
":TableGen",
":TableGenGlobalISel",
)
cc_library(
+ name = "CodeGenTypes",
+ srcs = [
+ "lib/CodeGen/LowLevelType.cpp",
+ ],
+ hdrs = [
+ "include/llvm/CodeGen/LowLevelType.h",
+ "include/llvm/CodeGen/MachineValueType.h",
+ ],
+ copts = llvm_copts,
+ deps = [
+ ":Support",
+ ],
+)
+
+cc_library(
name = "CodeGen",
srcs = glob(
[
"lib/CodeGen/SelectionDAG/*.cpp",
"lib/CodeGen/SelectionDAG/*.h",
],
+ exclude = [
+ "lib/CodeGen/LowLevelType.cpp",
+ ],
),
hdrs = [
"include/llvm/LinkAllPasses.h",
":BinaryFormat",
":BitReader",
":BitWriter",
+ ":CodeGenTypes",
":Core",
":DebugInfoCodeView",
":DebugInfoDWARF",
# Depending on `:CodeGen` headers in this library is almost
# certainly a layering problem in numerous targets.
":CodeGen",
+ ":CodeGenTypes",
":DebugInfoCodeView",
":MC",
":MCDisassembler",
":BinaryFormat",
":CFGuard",
":CodeGen",
+ ":CodeGenTypes",
":Core",
":IPO",
":MC",
copts = llvm_copts,
deps = [
":BinaryFormat",
+ ":CodeGenTypes",
":MC",
":MCParser",
":Support",
copts = llvm_copts,
features = ["-layering_check"],
deps = [
- ":CodeGen",
+ ":CodeGenTypes",
":Core",
":MC",
":MCDisassembler",
copts = llvm_copts,
features = ["-layering_check"],
deps = [
- ":CodeGen",
+ ":CodeGenTypes",
":MC",
":MCA",
":MCParser",
":BitReader",
":BitWriter",
":CodeGen",
+ ":CodeGenTypes",
":Core",
":IPO",
":IRPrinter",
deps = [
":BinaryFormat",
":CodeGen",
+ ":CodeGenTypes",
":DebugInfoDWARF",
":MC",
":Support",
":AllTargetsAsmParsers",
":AllTargetsCodeGens",
":CodeGen",
+ ":CodeGenTypes",
":Core",
":ExecutionEngine",
":MC",
":AllTargetsCodeGens",
":BinaryFormat",
":CodeGen",
+ ":CodeGenTypes",
":DWARFLinker",
":DebugInfo",
":DebugInfoDWARF",
":AsmParser",
":BitReader",
":CodeGen",
+ ":CodeGenTypes",
":Core",
":IRPrinter",
":IRReader",
deps = [
":AllTargetsAsmParsers",
":AllTargetsCodeGens",
- ":CodeGen",
+ ":CodeGenTypes",
":DWARFLinker",
":DebugInfoDWARF",
":DwarfutilOptionsTableGen",
":AllTargetsAsmParsers",
":AllTargetsCodeGens",
":AllTargetsDisassemblers",
- ":CodeGen",
+ ":CodeGenTypes",
":Exegesis",
":MC",
":MCParser",
":BitReader",
":BitWriter",
":CodeGen",
+ ":CodeGenTypes",
":Core",
":IPO",
":IRReader",
"//llvm:AsmParser",
"//llvm:BinaryFormat",
"//llvm:CodeGen",
+ "//llvm:CodeGenTypes",
"//llvm:Core",
"//llvm:MC",
"//llvm:Passes",
"//llvm:AllTargetsAsmParsers",
"//llvm:AllTargetsCodeGens",
"//llvm:CodeGen",
+ "//llvm:CodeGenTypes",
"//llvm:Core",
"//llvm:FileCheckLib",
"//llvm:MC",
"//llvm:AllTargetsAsmParsers",
"//llvm:AllTargetsCodeGens",
"//llvm:BinaryFormat",
- "//llvm:CodeGen",
+ "//llvm:CodeGenTypes",
"//llvm:Core",
"//llvm:DebugInfo",
"//llvm:DebugInfoDWARF",
"//llvm:AllTargetsAsmParsers",
"//llvm:AllTargetsCodeGens",
"//llvm:CodeGen",
+ "//llvm:CodeGenTypes",
"//llvm:Core",
"//llvm:MC",
"//llvm:Support",
"//llvm:AArch64UtilsAndDesc",
"//llvm:AsmParser",
"//llvm:CodeGen",
+ "//llvm:CodeGenTypes",
"//llvm:Core",
"//llvm:MC",
"//llvm:Support",
deps = [
"//llvm:AllTargetsCodeGens",
"//llvm:AllTargetsDisassemblers",
- "//llvm:CodeGen",
+ "//llvm:CodeGenTypes",
"//llvm:Exegesis",
"//llvm:MC",
"//llvm:MCDisassembler",