From 5d71ec6e448fa3ecb7e22368e97cf8274d5c84c6 Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Mon, 17 Apr 2023 23:46:47 +0900 Subject: Split out `CodeGenTypes` from `CodeGen` for LLT/MVT This reduces dependencies on `llvm-tblgen` so much. `CodeGenTypes` depends on `Support` at the moment. Be careful to append deps on this, since Targets' tablegens depend on this. Depends on D149024 Differential Revision: https://reviews.llvm.org/D148769 --- utils/bazel/llvm-project-overlay/clang/BUILD.bazel | 2 +- utils/bazel/llvm-project-overlay/llvm/BUILD.bazel | 40 ++++++++++++++++++---- .../llvm/unittests/BUILD.bazel | 8 +++-- 3 files changed, 41 insertions(+), 9 deletions(-) (limited to 'utils') diff --git a/utils/bazel/llvm-project-overlay/clang/BUILD.bazel b/utils/bazel/llvm-project-overlay/clang/BUILD.bazel index 842d25d68265..a8ada234db3e 100644 --- a/utils/bazel/llvm-project-overlay/clang/BUILD.bazel +++ b/utils/bazel/llvm-project-overlay/clang/BUILD.bazel @@ -1755,7 +1755,7 @@ cc_library( "//llvm:BitReader", "//llvm:BitWriter", "//llvm:BitstreamReader", - "//llvm:CodeGen", + "//llvm:CodeGenTypes", "//llvm:Core", "//llvm:Coroutines", "//llvm:Coverage", diff --git a/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel b/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel index fec1183dc6f9..ee4f6a177e0c 100644 --- a/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel +++ b/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel @@ -616,7 +616,7 @@ cc_library( features = ["-header_modules"], strip_include_prefix = "utils/TableGen", deps = [ - ":CodeGen", + ":CodeGenTypes", ":Support", ":TableGen", ":config", @@ -643,7 +643,7 @@ cc_binary( copts = llvm_copts, stamp = 0, deps = [ - ":CodeGen", + ":CodeGenTypes", ":Support", ":TableGen", ":TableGenGlobalISel", @@ -1667,6 +1667,21 @@ cc_library( textual_hdrs = glob(["lib/CodeGen/AsmPrinter/*.def"]), ) +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( @@ -1676,6 +1691,9 @@ cc_library( "lib/CodeGen/SelectionDAG/*.cpp", "lib/CodeGen/SelectionDAG/*.h", ], + exclude = [ + "lib/CodeGen/LowLevelType.cpp", + ], ), hdrs = [ "include/llvm/LinkAllPasses.h", @@ -1696,6 +1714,7 @@ cc_library( ":BinaryFormat", ":BitReader", ":BitWriter", + ":CodeGenTypes", ":Core", ":DebugInfoCodeView", ":DebugInfoDWARF", @@ -2213,6 +2232,7 @@ gentbl( # Depending on `:CodeGen` headers in this library is almost # certainly a layering problem in numerous targets. ":CodeGen", + ":CodeGenTypes", ":DebugInfoCodeView", ":MC", ":MCDisassembler", @@ -2245,6 +2265,7 @@ gentbl( ":BinaryFormat", ":CFGuard", ":CodeGen", + ":CodeGenTypes", ":Core", ":IPO", ":MC", @@ -2270,6 +2291,7 @@ gentbl( copts = llvm_copts, deps = [ ":BinaryFormat", + ":CodeGenTypes", ":MC", ":MCParser", ":Support", @@ -2315,7 +2337,7 @@ gentbl( copts = llvm_copts, features = ["-layering_check"], deps = [ - ":CodeGen", + ":CodeGenTypes", ":Core", ":MC", ":MCDisassembler", @@ -2337,7 +2359,7 @@ gentbl( copts = llvm_copts, features = ["-layering_check"], deps = [ - ":CodeGen", + ":CodeGenTypes", ":MC", ":MCA", ":MCParser", @@ -2457,6 +2479,7 @@ cc_library( ":BitReader", ":BitWriter", ":CodeGen", + ":CodeGenTypes", ":Core", ":IPO", ":IRPrinter", @@ -2709,6 +2732,7 @@ cc_library( deps = [ ":BinaryFormat", ":CodeGen", + ":CodeGenTypes", ":DebugInfoDWARF", ":MC", ":Support", @@ -2935,6 +2959,7 @@ cc_library( ":AllTargetsAsmParsers", ":AllTargetsCodeGens", ":CodeGen", + ":CodeGenTypes", ":Core", ":ExecutionEngine", ":MC", @@ -2986,6 +3011,7 @@ cc_binary( ":AllTargetsCodeGens", ":BinaryFormat", ":CodeGen", + ":CodeGenTypes", ":DWARFLinker", ":DebugInfo", ":DebugInfoDWARF", @@ -3017,6 +3043,7 @@ cc_binary( ":AsmParser", ":BitReader", ":CodeGen", + ":CodeGenTypes", ":Core", ":IRPrinter", ":IRReader", @@ -3406,7 +3433,7 @@ cc_binary( deps = [ ":AllTargetsAsmParsers", ":AllTargetsCodeGens", - ":CodeGen", + ":CodeGenTypes", ":DWARFLinker", ":DebugInfoDWARF", ":DwarfutilOptionsTableGen", @@ -3447,7 +3474,7 @@ cc_binary( ":AllTargetsAsmParsers", ":AllTargetsCodeGens", ":AllTargetsDisassemblers", - ":CodeGen", + ":CodeGenTypes", ":Exegesis", ":MC", ":MCParser", @@ -4311,6 +4338,7 @@ cc_binary( ":BitReader", ":BitWriter", ":CodeGen", + ":CodeGenTypes", ":Core", ":IPO", ":IRReader", diff --git a/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel b/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel index d7937f8d1212..82430699bb84 100644 --- a/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel +++ b/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel @@ -141,6 +141,7 @@ cc_test( "//llvm:AsmParser", "//llvm:BinaryFormat", "//llvm:CodeGen", + "//llvm:CodeGenTypes", "//llvm:Core", "//llvm:MC", "//llvm:Passes", @@ -169,6 +170,7 @@ cc_test( "//llvm:AllTargetsAsmParsers", "//llvm:AllTargetsCodeGens", "//llvm:CodeGen", + "//llvm:CodeGenTypes", "//llvm:Core", "//llvm:FileCheckLib", "//llvm:MC", @@ -202,7 +204,7 @@ cc_test( "//llvm:AllTargetsAsmParsers", "//llvm:AllTargetsCodeGens", "//llvm:BinaryFormat", - "//llvm:CodeGen", + "//llvm:CodeGenTypes", "//llvm:Core", "//llvm:DebugInfo", "//llvm:DebugInfoDWARF", @@ -448,6 +450,7 @@ cc_test( "//llvm:AllTargetsAsmParsers", "//llvm:AllTargetsCodeGens", "//llvm:CodeGen", + "//llvm:CodeGenTypes", "//llvm:Core", "//llvm:MC", "//llvm:Support", @@ -710,6 +713,7 @@ cc_test( "//llvm:AArch64UtilsAndDesc", "//llvm:AsmParser", "//llvm:CodeGen", + "//llvm:CodeGenTypes", "//llvm:Core", "//llvm:MC", "//llvm:Support", @@ -778,7 +782,7 @@ cc_test( deps = [ "//llvm:AllTargetsCodeGens", "//llvm:AllTargetsDisassemblers", - "//llvm:CodeGen", + "//llvm:CodeGenTypes", "//llvm:Exegesis", "//llvm:MC", "//llvm:MCDisassembler", -- cgit v1.2.1