[lit] Improve lit.Run class
[llvm-complete.git] / utils / gn / secondary / llvm / lib / Target / PowerPC / BUILD.gn
blob2065d0e25ab7eb71ee09315945012147676510ea
1 import("//llvm/utils/TableGen/tablegen.gni")
3 tablegen("PPCGenCallingConv") {
4   visibility = [ ":LLVMPowerPCCodeGen" ]
5   args = [ "-gen-callingconv" ]
6   td_file = "PPC.td"
9 tablegen("PPCGenDAGISel") {
10   visibility = [ ":LLVMPowerPCCodeGen" ]
11   args = [ "-gen-dag-isel" ]
12   td_file = "PPC.td"
15 tablegen("PPCGenFastISel") {
16   visibility = [ ":LLVMPowerPCCodeGen" ]
17   args = [ "-gen-fast-isel" ]
18   td_file = "PPC.td"
21 static_library("LLVMPowerPCCodeGen") {
22   deps = [
23     ":PPCGenCallingConv",
24     ":PPCGenDAGISel",
25     ":PPCGenFastISel",
26     "MCTargetDesc",
27     "TargetInfo",
28     "//llvm/include/llvm/Config:llvm-config",
29     "//llvm/lib/Analysis",
30     "//llvm/lib/CodeGen",
31     "//llvm/lib/CodeGen/AsmPrinter",
32     "//llvm/lib/CodeGen/SelectionDAG",
33     "//llvm/lib/IR",
34     "//llvm/lib/MC",
35     "//llvm/lib/Support",
36     "//llvm/lib/Target",
37     "//llvm/lib/Transforms/Utils",
38   ]
39   include_dirs = [ "." ]
40   sources = [
41     "PPCAsmPrinter.cpp",
42     "PPCBoolRetToInt.cpp",
43     "PPCBranchCoalescing.cpp",
44     "PPCBranchSelector.cpp",
45     "PPCCCState.cpp",
46     "PPCCTRLoops.cpp",
47     "PPCCallingConv.cpp",
48     "PPCEarlyReturn.cpp",
49     "PPCExpandISEL.cpp",
50     "PPCFastISel.cpp",
51     "PPCFrameLowering.cpp",
52     "PPCHazardRecognizers.cpp",
53     "PPCISelDAGToDAG.cpp",
54     "PPCISelLowering.cpp",
55     "PPCInstrInfo.cpp",
56     "PPCLoopPreIncPrep.cpp",
57     "PPCMCInstLower.cpp",
58     "PPCMIPeephole.cpp",
59     "PPCMachineFunctionInfo.cpp",
60     "PPCMachineScheduler.cpp",
61     "PPCPreEmitPeephole.cpp",
62     "PPCQPXLoadSplat.cpp",
63     "PPCReduceCRLogicals.cpp",
64     "PPCRegisterInfo.cpp",
65     "PPCSubtarget.cpp",
66     "PPCTLSDynamicCall.cpp",
67     "PPCTOCRegDeps.cpp",
68     "PPCTargetMachine.cpp",
69     "PPCTargetObjectFile.cpp",
70     "PPCTargetTransformInfo.cpp",
71     "PPCVSXCopy.cpp",
72     "PPCVSXFMAMutate.cpp",
73     "PPCVSXSwapRemoval.cpp",
74   ]
77 # This is a bit different from most build files: Due to this group
78 # having the directory's name, "//llvm/lib/Target/PowerPC" will refer to this
79 # target, which pulls in the code in this directory *and all subdirectories*.
80 # For most other directories, "//llvm/lib/Foo" only pulls in the code directly
81 # in "llvm/lib/Foo". The forwarding targets in //llvm/lib/Target expect this
82 # different behavior.
83 group("PowerPC") {
84   deps = [
85     ":LLVMPowerPCCodeGen",
86     "AsmParser",
87     "Disassembler",
88     "MCTargetDesc",
89     "TargetInfo",
90   ]