1 import("//llvm/utils/TableGen/tablegen.gni")
3 tablegen("NVPTXGenDAGISel") {
4 visibility = [ ":LLVMNVPTXCodeGen" ]
5 args = [ "-gen-dag-isel" ]
9 static_library("LLVMNVPTXCodeGen") {
14 "//llvm/include/llvm/Config:llvm-config",
15 "//llvm/lib/Analysis",
17 "//llvm/lib/CodeGen/AsmPrinter",
18 "//llvm/lib/CodeGen/SelectionDAG",
23 "//llvm/lib/Transforms/IPO",
24 "//llvm/lib/Transforms/Scalar",
25 "//llvm/lib/Transforms/Utils",
26 "//llvm/lib/Transforms/Vectorize",
28 include_dirs = [ "." ]
30 "NVPTXAllocaHoisting.cpp",
31 "NVPTXAsmPrinter.cpp",
32 "NVPTXAssignValidGlobalNames.cpp",
33 "NVPTXFrameLowering.cpp",
34 "NVPTXGenericToNVVM.cpp",
35 "NVPTXISelDAGToDAG.cpp",
36 "NVPTXISelLowering.cpp",
37 "NVPTXImageOptimizer.cpp",
39 "NVPTXLowerAggrCopies.cpp",
40 "NVPTXLowerAlloca.cpp",
44 "NVPTXPrologEpilogPass.cpp",
45 "NVPTXProxyRegErasure.cpp",
46 "NVPTXRegisterInfo.cpp",
47 "NVPTXReplaceImageHandles.cpp",
49 "NVPTXTargetMachine.cpp",
50 "NVPTXTargetTransformInfo.cpp",
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