gn build: Merge r372706
[llvm-complete.git] / utils / gn / secondary / llvm / lib / Target / Lanai / BUILD.gn
blob85903af80f6ac5ddaa63aaedd527704add95f47b
1 import("//llvm/utils/TableGen/tablegen.gni")
3 tablegen("LanaiGenCallingConv") {
4   visibility = [ ":LLVMLanaiCodeGen" ]
5   args = [ "-gen-callingconv" ]
6   td_file = "Lanai.td"
9 tablegen("LanaiGenDAGISel") {
10   visibility = [ ":LLVMLanaiCodeGen" ]
11   args = [ "-gen-dag-isel" ]
12   td_file = "Lanai.td"
15 static_library("LLVMLanaiCodeGen") {
16   deps = [
17     ":LanaiGenCallingConv",
18     ":LanaiGenDAGISel",
19     "MCTargetDesc",
20     "TargetInfo",
21     "//llvm/include/llvm/Config:llvm-config",
22     "//llvm/lib/Analysis",
23     "//llvm/lib/CodeGen",
24     "//llvm/lib/CodeGen/AsmPrinter",
25     "//llvm/lib/CodeGen/SelectionDAG",
26     "//llvm/lib/IR",
27     "//llvm/lib/MC",
28     "//llvm/lib/Support",
29     "//llvm/lib/Target",
30   ]
31   include_dirs = [ "." ]
32   sources = [
33     "LanaiAsmPrinter.cpp",
34     "LanaiDelaySlotFiller.cpp",
35     "LanaiFrameLowering.cpp",
36     "LanaiISelDAGToDAG.cpp",
37     "LanaiISelLowering.cpp",
38     "LanaiInstrInfo.cpp",
39     "LanaiMCInstLower.cpp",
40     "LanaiMachineFunctionInfo.cpp",
41     "LanaiMemAluCombiner.cpp",
42     "LanaiRegisterInfo.cpp",
43     "LanaiSelectionDAGInfo.cpp",
44     "LanaiSubtarget.cpp",
45     "LanaiTargetMachine.cpp",
46     "LanaiTargetObjectFile.cpp",
47   ]
50 # This is a bit different from most build files: Due to this group
51 # having the directory's name, "//llvm/lib/Target/Lanai" will refer to this
52 # target, which pulls in the code in this directory *and all subdirectories*.
53 # For most other directories, "//llvm/lib/Foo" only pulls in the code directly
54 # in "llvm/lib/Foo". The forwarding targets in //llvm/lib/Target expect this
55 # different behavior.
56 group("Lanai") {
57   deps = [
58     ":LLVMLanaiCodeGen",
59     "AsmParser",
60     "Disassembler",
61     "MCTargetDesc",
62     "TargetInfo",
63   ]