File: NVLinkOpts.td

package info (click to toggle)
llvm-toolchain-21 1%3A21.1.6-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 2,245,028 kB
  • sloc: cpp: 7,619,726; ansic: 1,434,018; asm: 1,058,748; python: 252,740; f90: 94,671; objc: 70,685; lisp: 42,813; pascal: 18,401; sh: 8,601; ml: 5,111; perl: 4,720; makefile: 3,675; awk: 3,523; javascript: 2,409; xml: 892; fortran: 770
file content (114 lines) | stat: -rw-r--r-- 5,523 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
// We try to create options similar to lld's.  That way, options passed to clang
// -Xoffload-linker can be the same whether offloading to nvptx or amdgpu.

include "llvm/Option/OptParser.td"

def WrapperOnlyOption : OptionFlag;

def help : Flag<["-", "--"], "help">,
  HelpText<"Display available options (--help-hidden for more)">;

def help_hidden : Flag<["-", "--"], "help-hidden">,
  HelpText<"Display all available options">;

def verbose : Flag<["-"], "v">, HelpText<"Print verbose information">;
def version : Flag<["--"], "version">,
  HelpText<"Display the version number and exit">;

def cuda_path_EQ : Joined<["--"], "cuda-path=">, Flags<[WrapperOnlyOption]>,
  MetaVarName<"<dir>">, HelpText<"Set the system CUDA path">;
def ptxas_path_EQ : Joined<["--"], "ptxas-path=">, Flags<[WrapperOnlyOption]>,
  MetaVarName<"<dir>">, HelpText<"Set the 'ptxas' path">;

def o : JoinedOrSeparate<["-"], "o">, MetaVarName<"<path>">,
  HelpText<"Path to file to write output">;
def output : Separate<["--"], "output-file">, Alias<o>, Flags<[HelpHidden]>,
  HelpText<"Alias for -o">;

def library_path : JoinedOrSeparate<["-"], "L">, MetaVarName<"<dir>">,
  HelpText<"Add <dir> to the library search path">;
def library_path_S : Separate<["--", "-"], "library-path">, Flags<[HelpHidden]>,
  Alias<library_path>;
def library_path_EQ : Joined<["--", "-"], "library-path=">, Flags<[HelpHidden]>,
  Alias<library_path>;

def library : JoinedOrSeparate<["-"], "l">, MetaVarName<"<libname>">,
  HelpText<"Search for library <libname>">;
def library_S : Separate<["--", "-"], "library">, Flags<[HelpHidden]>,
  Alias<library_path>;
def library_EQ : Joined<["--", "-"], "library=">, Flags<[HelpHidden]>,
  Alias<library_path>;

def plugin : JoinedOrSeparate<["--", "-"], "plugin">,
  Flags<[HelpHidden, WrapperOnlyOption]>;

def arch : Separate<["--", "-"], "arch">,
  HelpText<"Specify the 'sm_' name of the target architecture">;
def : Joined<["--", "-"], "plugin-opt=mcpu=">,
  Flags<[HelpHidden, WrapperOnlyOption]>, Alias<arch>;

def g : Flag<["-"], "g">, HelpText<"Specify that this was a debug compile">;
def debug : Flag<["--"], "debug">, Alias<g>;

def lto_emit_llvm : Flag<["--"], "lto-emit-llvm">, Flags<[WrapperOnlyOption]>,
  HelpText<"Emit LLVM-IR bitcode">;
def lto_emit_asm : Flag<["--"], "lto-emit-asm">, Flags<[WrapperOnlyOption]>,
  HelpText<"Emit assembly code">;

def u : JoinedOrSeparate<["-"], "u">, HelpText<"Force undefined symbol during linking">;
def undefined : JoinedOrSeparate<["--"], "undefined">, Alias<u>;

def O : Joined<["--", "-"], "plugin-opt=O">,
  Flags<[WrapperOnlyOption]>, MetaVarName<"<O0, O1, O2, or O3>">,
  HelpText<"Optimization level for LTO">;

def thinlto : Joined<["--", "-"], "plugin-opt=thinlto">,
  Flags<[WrapperOnlyOption]>, HelpText<"Enable the thin-lto backend">;
def lto_partitions : Joined<["--", "-"], "plugin-opt=lto-partitions=">,
  Flags<[WrapperOnlyOption]>, HelpText<"Number of LTO codegen partitions">;
def jobs : Joined<["--", "-"], "plugin-opt=jobs=">,
  Flags<[WrapperOnlyOption]>, HelpText<"Number of LTO codegen partitions">;
def : Joined<["--", "-"], "plugin-opt=emit-llvm">,
  Flags<[WrapperOnlyOption]>, Alias<lto_emit_llvm>;
def : Joined<["--", "-"], "plugin-opt=emit-asm">,
  Flags<[WrapperOnlyOption]>, Alias<lto_emit_asm>;

def opt_remarks_filename : Joined<["--", "-"], "plugin-opt=opt-remarks-filename=">,
  Flags<[WrapperOnlyOption]>, HelpText<"YAML output file for optimization remarks">;
def opt_remarks_format : Joined<["--", "-"], "plugin-opt=opt-remarks-format=">,
  Flags<[WrapperOnlyOption]>, HelpText<"The format used for serializing remarks (default: YAML)">;
def opt_remarks_filter : Joined<["--", "-"], "plugin-opt=opt-remarks-filter=">, 
  Flags<[WrapperOnlyOption]>, HelpText<"Regex for the passes that need to be serialized to the output file">;
def opt_remarks_with_hotness : Flag<["--", "-"], "plugin-opt=opt-remarks-with-hotness">,
  Flags<[WrapperOnlyOption]>, HelpText<"Include hotness information in the optimization remarks file">;

def plugin_opt : Joined<["--", "-"], "plugin-opt=">, Flags<[WrapperOnlyOption]>,
  HelpText<"Options passed to LLVM, not including the Clang invocation. Use "
           "'--plugin-opt=--help' for a list of options.">;

def lto_newpm_passes : Joined<["--"], "lto-newpm-passes=">,
  Flags<[WrapperOnlyOption]>, HelpText<"Passes to run during LTO">;
def lto_debug_pass_manager : Flag<["--"], "lto-debug-pass-manager">,
  Flags<[WrapperOnlyOption]>,   HelpText<"Debug new pass manager">;

def save_temps : Flag<["--", "-"], "save-temps">,
  Flags<[WrapperOnlyOption]>, HelpText<"Save intermediate results">;

def relocatable : Flag<["--", "-"], "relocatable">,
  Flags<[WrapperOnlyOption]>, HelpText<"Perform a relocatable link (LTO only)">;
def r : Flag<["-"], "r">, Flags<[WrapperOnlyOption]>, Alias<relocatable>;

def whole_archive : Flag<["--", "-"], "whole-archive">,
  Flags<[WrapperOnlyOption, HelpHidden]>;
def no_whole_archive : Flag<["--", "-"], "no-whole-archive">,
  Flags<[WrapperOnlyOption, HelpHidden]>;

def mllvm : Separate<["-"], "mllvm">, Flags<[WrapperOnlyOption]>,
  MetaVarName<"<arg>">,
  HelpText<"Arguments passed to LLVM, including Clang invocations, for which "
           "the '-mllvm' prefix is preserved. Use '-mllvm --help' for a list "
           "of options.">;
def mllvm_EQ : Joined<["-"], "mllvm=">, Flags<[HelpHidden]>, Alias<mllvm>;

def dry_run : Flag<["--", "-"], "dry-run">, Flags<[WrapperOnlyOption]>,
  HelpText<"Print generated commands without running.">;