[lit] Improve lit.Run class
[llvm-complete.git] / utils / gn / secondary / llvm / lib / Target / NVPTX / BUILD.gn
blobe0145feb61ce796031dedbf893d1a5c6189c0405
1 import("//llvm/utils/TableGen/tablegen.gni")
3 tablegen("NVPTXGenDAGISel") {
4   visibility = [ ":LLVMNVPTXCodeGen" ]
5   args = [ "-gen-dag-isel" ]
6   td_file = "NVPTX.td"
9 static_library("LLVMNVPTXCodeGen") {
10   deps = [
11     ":NVPTXGenDAGISel",
12     "MCTargetDesc",
13     "TargetInfo",
14     "//llvm/include/llvm/Config:llvm-config",
15     "//llvm/lib/Analysis",
16     "//llvm/lib/CodeGen",
17     "//llvm/lib/CodeGen/AsmPrinter",
18     "//llvm/lib/CodeGen/SelectionDAG",
19     "//llvm/lib/IR",
20     "//llvm/lib/MC",
21     "//llvm/lib/Support",
22     "//llvm/lib/Target",
23     "//llvm/lib/Transforms/IPO",
24     "//llvm/lib/Transforms/Scalar",
25     "//llvm/lib/Transforms/Utils",
26     "//llvm/lib/Transforms/Vectorize",
27   ]
28   include_dirs = [ "." ]
29   sources = [
30     "NVPTXAllocaHoisting.cpp",
31     "NVPTXAsmPrinter.cpp",
32     "NVPTXAssignValidGlobalNames.cpp",
33     "NVPTXFrameLowering.cpp",
34     "NVPTXGenericToNVVM.cpp",
35     "NVPTXISelDAGToDAG.cpp",
36     "NVPTXISelLowering.cpp",
37     "NVPTXImageOptimizer.cpp",
38     "NVPTXInstrInfo.cpp",
39     "NVPTXLowerAggrCopies.cpp",
40     "NVPTXLowerAlloca.cpp",
41     "NVPTXLowerArgs.cpp",
42     "NVPTXMCExpr.cpp",
43     "NVPTXPeephole.cpp",
44     "NVPTXPrologEpilogPass.cpp",
45     "NVPTXProxyRegErasure.cpp",
46     "NVPTXRegisterInfo.cpp",
47     "NVPTXReplaceImageHandles.cpp",
48     "NVPTXSubtarget.cpp",
49     "NVPTXTargetMachine.cpp",
50     "NVPTXTargetTransformInfo.cpp",
51     "NVPTXUtilities.cpp",
52     "NVVMIntrRange.cpp",
53     "NVVMReflect.cpp",
54   ]
57 # This is a bit different from most build files: Due to this group
58 # having the directory's name, "//llvm/lib/Target/NVPTX" will refer to this
59 # target, which pulls in the code in this directory *and all subdirectories*.
60 # For most other directories, "//llvm/lib/Foo" only pulls in the code directly
61 # in "llvm/lib/Foo". The forwarding targets in //llvm/lib/Target expect this
62 # different behavior.
63 group("NVPTX") {
64   deps = [
65     ":LLVMNVPTXCodeGen",
66     "MCTargetDesc",
67     "TargetInfo",
68   ]