xref: /llvm-project/llvm/tools/dsymutil/Options.td (revision 5886454669c3c9026f7f27eab13509dd0241f2d6)
1eddc1a4eSJonas Devlieghereinclude "llvm/Option/OptParser.td"
2eddc1a4eSJonas Devlieghere
3eddc1a4eSJonas Devlieghereclass F<string name>: Flag<["--", "-"], name>;
4eddc1a4eSJonas Devlieghere
5eddc1a4eSJonas Devliegheredef grp_general : OptionGroup<"Dsymutil">, HelpText<"Dsymutil Options">;
6eddc1a4eSJonas Devlieghere
7eddc1a4eSJonas Devliegheredef help: F<"help">,
8eddc1a4eSJonas Devlieghere  HelpText<"Prints this help output.">,
9eddc1a4eSJonas Devlieghere  Group<grp_general>;
10eddc1a4eSJonas Devliegheredef: Flag<["-"], "h">,
11eddc1a4eSJonas Devlieghere  Alias<help>,
12eddc1a4eSJonas Devlieghere  HelpText<"Alias for --help">,
13eddc1a4eSJonas Devlieghere  Group<grp_general>;
14eddc1a4eSJonas Devlieghere
15eddc1a4eSJonas Devliegheredef version: F<"version">,
16eddc1a4eSJonas Devlieghere  HelpText<"Prints the dsymutil version.">,
17eddc1a4eSJonas Devlieghere  Group<grp_general>;
18eddc1a4eSJonas Devliegheredef: Flag<["-"], "v">,
19eddc1a4eSJonas Devlieghere  Alias<version>,
20eddc1a4eSJonas Devlieghere  HelpText<"Alias for --version">,
21eddc1a4eSJonas Devlieghere  Group<grp_general>;
22eddc1a4eSJonas Devlieghere
23eddc1a4eSJonas Devliegheredef verbose: F<"verbose">,
24eddc1a4eSJonas Devlieghere  HelpText<"Enable verbose mode.">,
25eddc1a4eSJonas Devlieghere  Group<grp_general>;
26eddc1a4eSJonas Devlieghere
271e97d114SJonas Devliegheredef quiet: F<"quiet">,
281e97d114SJonas Devlieghere  HelpText<"Enable quiet mode.">,
291e97d114SJonas Devlieghere  Group<grp_general>;
301e97d114SJonas Devliegheredef: Flag<["-"], "q">,
311e97d114SJonas Devlieghere  Alias<quiet>,
321e97d114SJonas Devlieghere  HelpText<"Alias for --quiet">,
331e97d114SJonas Devlieghere  Group<grp_general>;
341e97d114SJonas Devlieghere
35625bd94cSJonas Devliegheredef keep_func_for_static: F<"keep-function-for-static">,
36625bd94cSJonas Devlieghere  HelpText<"Make a static variable keep the enclosing function even if it would have been omitted otherwise.">,
37625bd94cSJonas Devlieghere  Group<grp_general>;
38625bd94cSJonas Devlieghere
397fb9bcd3SJonas Devliegheredef statistics: F<"statistics">,
407fb9bcd3SJonas Devlieghere  HelpText<"Print statistics about the contribution of each object file to "
417fb9bcd3SJonas Devlieghere           "the linked debug info. This prints a table after linking with the "
427fb9bcd3SJonas Devlieghere           "object file name, the size of the debug info in the object file "
437fb9bcd3SJonas Devlieghere           "(in bytes) and the size contributed (in bytes) to the linked dSYM. "
447fb9bcd3SJonas Devlieghere           "The table is sorted by the output size listing the object files "
457fb9bcd3SJonas Devlieghere           "with the largest contribution first.">,
467fb9bcd3SJonas Devlieghere  Group<grp_general>;
477fb9bcd3SJonas Devlieghere
48eddc1a4eSJonas Devliegheredef verify: F<"verify">,
49409c515fSJonas Devlieghere  HelpText<"Alias for --verify-dwarf=output">,
50eddc1a4eSJonas Devlieghere  Group<grp_general>;
51eddc1a4eSJonas Devlieghere
52409c515fSJonas Devliegheredef verify_dwarf: Separate<["--", "-"], "verify-dwarf">,
53409c515fSJonas Devlieghere  MetaVarName<"<verification mode>">,
54be91b4e3SJonas Devlieghere  HelpText<"Run the DWARF verifier on the input and/or output. "
55be91b4e3SJonas Devlieghere           "Valid options are 'none, 'input', 'output', 'all' or 'auto' "
56be91b4e3SJonas Devlieghere           "which runs the output verifier only if input verification passed.">,
57409c515fSJonas Devlieghere  Group<grp_general>;
58409c515fSJonas Devliegheredef: Joined<["--", "-"], "verify-dwarf=">, Alias<verify_dwarf>;
59409c515fSJonas Devlieghere
60eddc1a4eSJonas Devliegheredef no_output: F<"no-output">,
61eddc1a4eSJonas Devlieghere  HelpText<"Do the link in memory, but do not emit the result file.">,
62eddc1a4eSJonas Devlieghere  Group<grp_general>;
63eddc1a4eSJonas Devlieghere
64eddc1a4eSJonas Devliegheredef no_swiftmodule_timestamp: F<"no-swiftmodule-timestamp">,
65eddc1a4eSJonas Devlieghere  HelpText<"Don't check timestamp for swiftmodule files.">,
66eddc1a4eSJonas Devlieghere  Group<grp_general>;
67eddc1a4eSJonas Devlieghere
68*58864546SJonas Devliegheredef no_object_timestamp: F<"no-object-timestamp">,
69*58864546SJonas Devlieghere  HelpText<"Don't check timestamp for object files.">,
70*58864546SJonas Devlieghere  Group<grp_general>;
71*58864546SJonas Devlieghere
72eddc1a4eSJonas Devliegheredef no_odr: F<"no-odr">,
73eddc1a4eSJonas Devlieghere  HelpText<"Do not use ODR (One Definition Rule) for type uniquing.">,
74eddc1a4eSJonas Devlieghere  Group<grp_general>;
75eddc1a4eSJonas Devlieghere
76eddc1a4eSJonas Devliegheredef dump_debug_map: F<"dump-debug-map">,
772204a7bcSEllis Hoag  HelpText<"Parse and dump the debug map to standard output. No DWARF link will take place.">,
78eddc1a4eSJonas Devlieghere  Group<grp_general>;
79eddc1a4eSJonas Devlieghere
80329ebb85SXing GUOdef yaml_input: Flag<["-", "--"], "y">,
81eddc1a4eSJonas Devlieghere  HelpText<"Treat the input file is a YAML debug map rather than a binary.">,
82eddc1a4eSJonas Devlieghere  Group<grp_general>;
83eddc1a4eSJonas Devlieghere
84329ebb85SXing GUOdef assembly: Flag<["-", "--"], "S">,
85eddc1a4eSJonas Devlieghere  HelpText<"Output textual assembly instead of a binary dSYM companion file.">,
86eddc1a4eSJonas Devlieghere  Group<grp_general>;
87eddc1a4eSJonas Devlieghere
88eddc1a4eSJonas Devliegheredef symtab: F<"symtab">,
89eddc1a4eSJonas Devlieghere  HelpText<"Dumps the symbol table found in executable or object file(s) and exits.">,
90eddc1a4eSJonas Devlieghere  Group<grp_general>;
91eddc1a4eSJonas Devliegheredef: Flag<["-"], "s">,
92eddc1a4eSJonas Devlieghere  Alias<symtab>,
93eddc1a4eSJonas Devlieghere  HelpText<"Alias for --symtab">,
94eddc1a4eSJonas Devlieghere  Group<grp_general>;
95eddc1a4eSJonas Devlieghere
96eddc1a4eSJonas Devliegheredef flat: F<"flat">,
97eddc1a4eSJonas Devlieghere  HelpText<"Produce a flat dSYM file (not a bundle).">,
98eddc1a4eSJonas Devlieghere  Group<grp_general>;
99eddc1a4eSJonas Devliegheredef: Flag<["-"], "f">,
100eddc1a4eSJonas Devlieghere  Alias<flat>,
101eddc1a4eSJonas Devlieghere  HelpText<"Alias for --flat">,
102eddc1a4eSJonas Devlieghere  Group<grp_general>;
103eddc1a4eSJonas Devlieghere
1044d683f7fSJonas Devliegheredef fat64: F<"fat64">,
1054d683f7fSJonas Devlieghere  HelpText<"Use a 64-bit header when emitting universal binaries.">,
1064d683f7fSJonas Devlieghere  Group<grp_general>;
1074d683f7fSJonas Devlieghere
108eddc1a4eSJonas Devliegheredef update: F<"update">,
109eddc1a4eSJonas Devlieghere  HelpText<"Updates existing dSYM files to contain the latest accelerator tables and other DWARF optimizations.">,
110eddc1a4eSJonas Devlieghere  Group<grp_general>;
111eddc1a4eSJonas Devliegheredef: Flag<["-"], "u">,
112eddc1a4eSJonas Devlieghere  Alias<update>,
113eddc1a4eSJonas Devlieghere  HelpText<"Alias for --update">,
114eddc1a4eSJonas Devlieghere  Group<grp_general>;
115eddc1a4eSJonas Devlieghere
116329ebb85SXing GUOdef output: Separate<["-", "--"], "o">,
117eddc1a4eSJonas Devlieghere  MetaVarName<"<filename>">,
118eddc1a4eSJonas Devlieghere  HelpText<"Specify the output file. Defaults to <input file>.dwarf">,
119eddc1a4eSJonas Devlieghere  Group<grp_general>;
120ed1756cfSJonas Devliegheredef: Separate<["--", "-"], "out">,
121b7924d65SJonas Devlieghere  MetaVarName<"<filename>">,
122eddc1a4eSJonas Devlieghere  Alias<output>,
123329ebb85SXing GUO  HelpText<"Alias for -o">,
124eddc1a4eSJonas Devlieghere  Group<grp_general>;
125eddc1a4eSJonas Devliegheredef: Joined<["--", "-"], "out=">, Alias<output>;
126329ebb85SXing GUOdef: Joined<["-", "--"], "o=">, Alias<output>;
127eddc1a4eSJonas Devlieghere
128eddc1a4eSJonas Devliegheredef oso_prepend_path: Separate<["--", "-"], "oso-prepend-path">,
129eddc1a4eSJonas Devlieghere  MetaVarName<"<path>">,
130eddc1a4eSJonas Devlieghere  HelpText<"Specify a directory to prepend to the paths of object files.">,
131eddc1a4eSJonas Devlieghere  Group<grp_general>;
132eddc1a4eSJonas Devliegheredef: Joined<["--", "-"], "oso-prepend-path=">, Alias<oso_prepend_path>;
133eddc1a4eSJonas Devlieghere
134ed8ad6ecSAdrian Prantldef object_prefix_map: Separate<["--", "-"], "object-prefix-map">,
135ed8ad6ecSAdrian Prantl    MetaVarName<"<prefix=remapped>">,
136ed8ad6ecSAdrian Prantl    HelpText<"Remap object file paths (but no source paths) before processing. "
137ed8ad6ecSAdrian Prantl             "Use this for Clang objects where the module cache location was "
138ed8ad6ecSAdrian Prantl             "remapped using -fdebug-prefix-map; to help dsymutil "
139ed8ad6ecSAdrian Prantl             "find the Clang module cache.">,
140ed8ad6ecSAdrian Prantl    Group<grp_general>;
141ed8ad6ecSAdrian Prantldef: Joined<["--", "-"], "object-prefix-map=">, Alias<object_prefix_map>;
142ed8ad6ecSAdrian Prantl
143eddc1a4eSJonas Devliegheredef arch: Separate<["--", "-"], "arch">,
144eddc1a4eSJonas Devlieghere  MetaVarName<"<arch>">,
145eddc1a4eSJonas Devlieghere  HelpText<"Link DWARF debug information only for specified CPU architecture "
146eddc1a4eSJonas Devlieghere           "types. This option can be specified multiple times, once for each "
147eddc1a4eSJonas Devlieghere           "desired architecture. All CPU architectures will be linked by "
148eddc1a4eSJonas Devlieghere           "default.">,
149eddc1a4eSJonas Devlieghere  Group<grp_general>;
150eddc1a4eSJonas Devliegheredef: Joined<["--", "-"], "arch=">, Alias<arch>;
151eddc1a4eSJonas Devlieghere
152eddc1a4eSJonas Devliegheredef accelerator: Separate<["--", "-"], "accelerator">,
153eddc1a4eSJonas Devlieghere  MetaVarName<"<accelerator type>">,
1544d9c0834SAlexey Lapshin  HelpText<"Specify the desired type of accelerator table. Valid options are 'Apple' (.apple_names, .apple_namespaces, .apple_types, .apple_objc), 'Dwarf' (.debug_names), 'Pub' (.debug_pubnames, .debug_pubtypes), 'Default' and 'None'">,
155eddc1a4eSJonas Devlieghere  Group<grp_general>;
156eddc1a4eSJonas Devliegheredef: Joined<["--", "-"], "accelerator=">, Alias<accelerator>;
157eddc1a4eSJonas Devlieghere
158eddc1a4eSJonas Devliegheredef toolchain: Separate<["--", "-"], "toolchain">,
159eddc1a4eSJonas Devlieghere  MetaVarName<"<toolchain>">,
160eddc1a4eSJonas Devlieghere  HelpText<"Embed toolchain information in dSYM bundle.">,
161eddc1a4eSJonas Devlieghere  Group<grp_general>;
162eddc1a4eSJonas Devlieghere
163eddc1a4eSJonas Devliegheredef threads: Separate<["--", "-"], "num-threads">,
164eddc1a4eSJonas Devlieghere  MetaVarName<"<threads>">,
165eddc1a4eSJonas Devlieghere  HelpText<"Specifies the maximum number of simultaneous threads to use when linking multiple architectures.">,
166eddc1a4eSJonas Devlieghere  Group<grp_general>;
167eddc1a4eSJonas Devliegheredef: Separate<["-"], "j">,
168b7924d65SJonas Devlieghere  MetaVarName<"<threads>">,
169eddc1a4eSJonas Devlieghere  HelpText<"Alias for --num-threads">,
170eddc1a4eSJonas Devlieghere  Group<grp_general>;
1711ee18f27SFrancis Visoiu Mistrih
17233b6891dSJonas Devliegheredef reproducer: Separate<["--", "-"], "reproducer">,
17333b6891dSJonas Devlieghere  MetaVarName<"<mode>">,
1742f268b74SKeith Smiley  HelpText<"Specify the reproducer generation mode. Valid options are 'GenerateOnExit', 'GenerateOnCrash', 'Off'.">,
17533b6891dSJonas Devlieghere  Group<grp_general>;
17633b6891dSJonas Devliegheredef: Joined<["--", "-"], "reproducer=">, Alias<reproducer>;
17733b6891dSJonas Devlieghere
17892fd3971SJonas Devliegheredef gen_reproducer: F<"gen-reproducer">,
17933b6891dSJonas Devlieghere  HelpText<"Generate a reproducer consisting of the input object files. Alias for --reproducer=GenerateOnExit.">,
18092fd3971SJonas Devlieghere  Group<grp_general>;
18192fd3971SJonas Devlieghere
18292fd3971SJonas Devliegheredef use_reproducer: Separate<["--", "-"], "use-reproducer">,
18392fd3971SJonas Devlieghere  MetaVarName<"<path>">,
1842f268b74SKeith Smiley  HelpText<"Use the object files from the given reproducer path.">,
18592fd3971SJonas Devlieghere  Group<grp_general>;
18692fd3971SJonas Devliegheredef: Joined<["--", "-"], "use-reproducer=">, Alias<use_reproducer>;
18792fd3971SJonas Devlieghere
1881ee18f27SFrancis Visoiu Mistrihdef remarks_prepend_path: Separate<["--", "-"], "remarks-prepend-path">,
1891ee18f27SFrancis Visoiu Mistrih  MetaVarName<"<path>">,
1901ee18f27SFrancis Visoiu Mistrih  HelpText<"Specify a directory to prepend to the paths of the external remark files.">,
1911ee18f27SFrancis Visoiu Mistrih  Group<grp_general>;
1921ee18f27SFrancis Visoiu Mistrihdef: Joined<["--", "-"], "remarks-prepend-path=">, Alias<remarks_prepend_path>;
1931ee18f27SFrancis Visoiu Mistrih
1941ee18f27SFrancis Visoiu Mistrihdef remarks_output_format: Separate<["--", "-"], "remarks-output-format">,
1951ee18f27SFrancis Visoiu Mistrih  MetaVarName<"<format>">,
1961ee18f27SFrancis Visoiu Mistrih  HelpText<"Specify the format to be used when serializing the linked remarks.">,
1971ee18f27SFrancis Visoiu Mistrih  Group<grp_general>;
1981ee18f27SFrancis Visoiu Mistrihdef: Joined<["--", "-"], "remarks-output-format=">, Alias<remarks_output_format>;
199e1596d7dSFlorian Hahn
200e1596d7dSFlorian Hahndef remarks_drop_without_debug: Flag<["--", "-"], "remarks-drop-without-debug">,
201e1596d7dSFlorian Hahn  HelpText<"Drop remarks without valid debug locations. Without this flags, "
202e1596d7dSFlorian Hahn           "all remarks are kept.">,
203e1596d7dSFlorian Hahn  Group<grp_general>;
20436f35109SAlexey Lapshin
20536f35109SAlexey Lapshindef linker: Separate<["--", "-"], "linker">,
20636f35109SAlexey Lapshin  MetaVarName<"<DWARF linker type>">,
207f1fdfe68SAlexey Lapshin  HelpText<"Specify the desired type of DWARF linker. Defaults to 'classic'">,
20836f35109SAlexey Lapshin  Group<grp_general>;
20936f35109SAlexey Lapshindef: Joined<["--", "-"], "linker=">, Alias<linker>;
21088d00a68SAlpha Abdoulaye
21188d00a68SAlpha Abdoulayedef build_variant_suffix: Separate<["--", "-"], "build-variant-suffix">,
21288d00a68SAlpha Abdoulaye  MetaVarName<"<suffix=buildvariant>">,
213229f391fSrjmansfield  HelpText<"Specify the build variant suffix used to build the executable file.">,
21488d00a68SAlpha Abdoulaye  Group<grp_general>;
21588d00a68SAlpha Abdoulayedef: Joined<["--", "-"], "build-variant-suffix=">, Alias<build_variant_suffix>;
21688d00a68SAlpha Abdoulaye
21788d00a68SAlpha Abdoulayedef dsym_search_path: Separate<["-", "--"], "D">,
21888d00a68SAlpha Abdoulaye  MetaVarName<"<path>">,
21988d00a68SAlpha Abdoulaye  HelpText<"Specify a directory that contain dSYM files to search for.">,
22088d00a68SAlpha Abdoulaye  Group<grp_general>;
221