diff --git a/utils/bazel/llvm-project-overlay/bolt/BUILD.bazel b/utils/bazel/llvm-project-overlay/bolt/BUILD.bazel new file mode 100644 --- /dev/null +++ b/utils/bazel/llvm-project-overlay/bolt/BUILD.bazel @@ -0,0 +1,282 @@ +# This file is licensed under the Apache License v2.0 with LLVM Exceptions. +# See https://llvm.org/LICENSE.txt for license information. +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + +package( + default_visibility = ["//visibility:public"], + licenses = ["notice"], +) + +cc_binary( + name = "llvm-bolt-heatmap", + srcs = glob([ + "tools/heatmap/*.cpp", + ]), + deps = [ + ":Profile", + ":Rewrite", + ":Utils", + "//llvm:MC", + "//llvm:Object", + "//llvm:Support", + "//llvm:AllTargetsAsmParsers", + "//llvm:AllTargetsDisassemblers", + ] +) + +cc_binary( + name = "merge-fdata", + srcs = glob([ + "tools/merge-fdata/*.cpp", + ]), + deps = [ + ":Profile", + "//llvm:Support", + ] +) + +cc_binary( + name = "llvm-bolt", + srcs = glob([ + "tools/driver/*.cpp", + ]), + includes = ["include"], + deps = [ + ":Profile", + ":Rewrite", + ":RuntimeLibs", + ":Utils", + ":TargetX86", + ":TargetAArch64", + "//llvm:AllTargetsAsmParsers", + "//llvm:AllTargetsCodeGens", + "//llvm:AllTargetsDisassemblers", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:Object", + "//llvm:Support", + ], +) + +cc_library( + name = "Rewrite", + srcs = glob([ + "lib/Rewrite/*.cpp", + ]), + hdrs = glob([ + "include/bolt/Rewrite/*.h", + ]), + includes = ["include"], + deps = [ + ":Core", + ":Passes", + ":Profile", + ":RuntimeLibs", + ":TargetX86", + ":Utils", + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DWP", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + "//llvm:ir_headers", + ], +) + +cc_library( + name = "RuntimeLibs", + srcs = glob([ + "lib/RuntimeLibs/*.cpp", + ]), + hdrs = glob([ + "include/bolt/RuntimeLibs/*.h", + ]), + includes = ["include"], + deps = [ + ":Core", + ":Passes", + ":Utils", + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DWP", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + ], +) + +cc_library( + name = "Profile", + srcs = glob([ + "lib/Profile/*.cpp", + ]), + hdrs = glob([ + "include/bolt/Profile/*.h", + ]), + includes = ["include"], + deps = [ + ":Core", + ":Passes", + ":Utils", + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + ], +) + +cc_library( + name = "Passes", + srcs = glob([ + "lib/Passes/*.cpp", + ]), + hdrs = glob([ + "include/bolt/Passes/*.h", + ]), + includes = ["include"], + deps = [ + ":Core", + ":Utils", + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + "//llvm:Target", + ], +) + +cc_library( + name = "TargetX86", + srcs = glob([ + "lib/Target/X86/*.cpp", + ]), + hdrs = glob([ + "lib/Target/X86/*.h", + ]), + includes = ["include"], + deps = [ + ":Core", + "//llvm:X86CommonTableGen", + "//llvm:X86UtilsAndDesc", + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DWP", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + ], +) + +cc_library( + name = "TargetAArch64", + srcs = glob([ + "lib/Target/AArch64/*.cpp", + ]), + hdrs = glob([ + ]), + includes = ["include"], + deps = [ + ":Core", + ":Utils", + "//llvm:AArch64CommonTableGen", + "//llvm:AArch64UtilsAndDesc", + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DWP", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + ], +) + +cc_library( + name = "Core", + srcs = glob([ + "lib/Core/*.cpp", + ]), + hdrs = glob([ + "include/bolt/Core/*.h", + "include/bolt/RuntimeLibs/*.h", + "include/bolt/Passes/*.h", + "include/bolt/Rewrite/*.h", + ]), + includes = ["include"], + deps = [ + ":Utils", + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + ], +) + +cc_library( + name = "Utils", + srcs = glob([ + "lib/Utils/*.cpp", + ]), + hdrs = glob([ + "include/bolt/Utils/*.h", + ]), + includes = ["include"], + deps = [ + "//llvm:Analysis", + "//llvm:BinaryFormat", + "//llvm:CodeGen", + "//llvm:DWP", + "//llvm:DebugInfoDWARF", + "//llvm:Demangle", + "//llvm:ExecutionEngine", + "//llvm:MC", + "//llvm:MCDisassembler", + "//llvm:MCParser", + "//llvm:Object", + "//llvm:Support", + ], +)