xref: /freebsd-src/contrib/llvm-project/llvm/tools/llvm-objdump/ObjdumpOpts.td (revision 0fca6ea1d4eea4c934cfff25ac9ee8ad6fe95583)
1fe6060f1SDimitry Andricinclude "llvm/Option/OptParser.td"
2fe6060f1SDimitry Andric
3bdd1243dSDimitry Andricmulticlass B<string name, string help1, string help2> {
4bdd1243dSDimitry Andric  def NAME: Flag<["--"], name>, HelpText<help1>;
5bdd1243dSDimitry Andric  def no_ # NAME: Flag<["--"], "no-" # name>, HelpText<help2>;
6bdd1243dSDimitry Andric}
7bdd1243dSDimitry Andric
8349cc55cSDimitry Andricmulticlass Eq<string name, string help> {
9349cc55cSDimitry Andric  def NAME : Separate<["--"], name>;
10349cc55cSDimitry Andric  def NAME #_eq : Joined<["--"], name #"=">,
11349cc55cSDimitry Andric                  Alias<!cast<Separate>(NAME)>,
12349cc55cSDimitry Andric                  HelpText<help>;
13349cc55cSDimitry Andric}
14349cc55cSDimitry Andric
15fe6060f1SDimitry Andricdef help : Flag<["--"], "help">,
16fe6060f1SDimitry Andric  HelpText<"Display available options (--help-hidden for more)">;
17fe6060f1SDimitry Andric
18fe6060f1SDimitry Andricdef help_hidden : Flag<["--"], "help-hidden">,
19fe6060f1SDimitry Andric  Flags<[HelpHidden]>,
20fe6060f1SDimitry Andric  HelpText<"Display all available options">;
21fe6060f1SDimitry Andric
22fe6060f1SDimitry Andricdef version : Flag<["--"], "version">,
23fe6060f1SDimitry Andric  HelpText<"Display the version of this program">;
24fe6060f1SDimitry Andricdef : Flag<["-"], "v">, Alias<version>, HelpText<"Alias for --version">;
25fe6060f1SDimitry Andric
26fe6060f1SDimitry Andricdef adjust_vma_EQ : Joined<["--"], "adjust-vma=">,
27fe6060f1SDimitry Andric  MetaVarName<"offset">,
28fe6060f1SDimitry Andric  HelpText<"Increase the displayed address by the specified offset">;
29fe6060f1SDimitry Andric
30fe6060f1SDimitry Andricdef all_headers : Flag<["--"], "all-headers">,
31349cc55cSDimitry Andric  HelpText<"Display all available header information, "
32349cc55cSDimitry Andric           "relocation entries and the symbol table">;
33fe6060f1SDimitry Andricdef : Flag<["-"], "x">, Alias<all_headers>, HelpText<"Alias for --all-headers">;
34fe6060f1SDimitry Andric
35fe6060f1SDimitry Andricdef arch_name_EQ : Joined<["--"], "arch-name=">,
36fe6060f1SDimitry Andric  HelpText<"Target arch to disassemble for, "
37fe6060f1SDimitry Andric            "see --version for available targets">;
38fe6060f1SDimitry Andricdef archive_headers : Flag<["--"], "archive-headers">,
39fe6060f1SDimitry Andric  HelpText<"Display archive header information">;
40fe6060f1SDimitry Andric
41bdd1243dSDimitry Andricdefm build_id :
42bdd1243dSDimitry Andric  Eq<"build-id", "Build ID to look up. Once found, added as an input file">,
43bdd1243dSDimitry Andric  MetaVarName<"<hex>">;
44bdd1243dSDimitry Andric
45fe6060f1SDimitry Andricdef : Flag<["-"], "a">, Alias<archive_headers>,
46fe6060f1SDimitry Andric  HelpText<"Alias for --archive-headers">;
47fe6060f1SDimitry Andric
48fe6060f1SDimitry Andricdef demangle : Flag<["--"], "demangle">, HelpText<"Demangle symbol names">;
49fe6060f1SDimitry Andricdef : Flag<["-"], "C">, Alias<demangle>, HelpText<"Alias for --demangle">;
50fe6060f1SDimitry Andric
51bdd1243dSDimitry Andricdefm debug_file_directory :
52bdd1243dSDimitry Andric  Eq<"debug-file-directory", "Path to directory where to look for debug files">,
53bdd1243dSDimitry Andric  MetaVarName<"<dir>">;
54bdd1243dSDimitry Andric
55bdd1243dSDimitry Andricdefm debuginfod : B<"debuginfod", "Use debuginfod to find debug files", "Don't use debuginfod to find debug files">;
56bdd1243dSDimitry Andric
57fe6060f1SDimitry Andricdef disassemble : Flag<["--"], "disassemble">,
58349cc55cSDimitry Andric  HelpText<"Disassemble all executable sections found in the input files">;
59fe6060f1SDimitry Andricdef : Flag<["-"], "d">, Alias<disassemble>, HelpText<"Alias for --disassemble">;
60fe6060f1SDimitry Andric
61fe6060f1SDimitry Andricdef disassemble_all : Flag<["--"], "disassemble-all">,
62349cc55cSDimitry Andric  HelpText<"Disassemble all sections found in the input files">;
63fe6060f1SDimitry Andricdef : Flag<["-"], "D">, Alias<disassemble_all>,
64fe6060f1SDimitry Andric  HelpText<"Alias for --disassemble-all">;
65fe6060f1SDimitry Andric
66fe6060f1SDimitry Andricdef symbol_description : Flag<["--"], "symbol-description">,
67fe6060f1SDimitry Andric  HelpText<"Add symbol description for disassembly. This "
6806c3fb27SDimitry Andric           "option is for XCOFF files only">;
6906c3fb27SDimitry Andric
7006c3fb27SDimitry Andricdef traceback_table : Flag<["--"], "traceback-table">,
7106c3fb27SDimitry Andric  HelpText<"Decode traceback table in disassembly. Implies --disassemble. "
7206c3fb27SDimitry Andric           "This option is for XCOFF files only">;
73fe6060f1SDimitry Andric
74fe6060f1SDimitry Andricdef disassemble_symbols_EQ : Joined<["--"], "disassemble-symbols=">,
75fe6060f1SDimitry Andric  HelpText<"List of symbols to disassemble. "
76fe6060f1SDimitry Andric           "Accept demangled names when --demangle is "
77fe6060f1SDimitry Andric           "specified, otherwise accept mangled names">;
78fe6060f1SDimitry Andric
79fe6060f1SDimitry Andricdef disassemble_zeroes : Flag<["--"], "disassemble-zeroes">,
80fe6060f1SDimitry Andric  HelpText<"Do not skip blocks of zeroes when disassembling">;
81fe6060f1SDimitry Andricdef : Flag<["-"], "z">, Alias<disassemble_zeroes>,
82fe6060f1SDimitry Andric  HelpText<"Alias for --disassemble-zeroes">;
83fe6060f1SDimitry Andric
84fe6060f1SDimitry Andricdef disassembler_options_EQ : Joined<["--"], "disassembler-options=">,
85fe6060f1SDimitry Andric  MetaVarName<"options">,
86fe6060f1SDimitry Andric  HelpText<"Pass target specific disassembler options">;
87fe6060f1SDimitry Andricdef : JoinedOrSeparate<["-"], "M">, Alias<disassembler_options_EQ>,
88fe6060f1SDimitry Andric  HelpText<"Alias for --disassembler-options=">;
89fe6060f1SDimitry Andric
905f757f3fSDimitry Andricdef disassembler_color_EQ : Joined<["--"], "disassembler-color=">,
915f757f3fSDimitry Andric  MetaVarName<"mode">,
925f757f3fSDimitry Andric  HelpText<"Enable or disable disassembler color output. "
935f757f3fSDimitry Andric           "Valid options are \"on\", \"off\" and \"terminal\" (default)">;
945f757f3fSDimitry Andric
95fe6060f1SDimitry Andricdef dynamic_reloc : Flag<["--"], "dynamic-reloc">,
96fe6060f1SDimitry Andric  HelpText<"Display the dynamic relocation entries in the file">;
97fe6060f1SDimitry Andricdef : Flag<["-"], "R">, Alias<dynamic_reloc>,
98fe6060f1SDimitry Andric  HelpText<"Alias for --dynamic-reloc">;
99fe6060f1SDimitry Andric
100fe6060f1SDimitry Andricdef dwarf_EQ : Joined<["--"], "dwarf=">,
101349cc55cSDimitry Andric  HelpText<"Dump the specified DWARF debug sections. The "
102349cc55cSDimitry Andric           "only supported value is 'frames'">,
103349cc55cSDimitry Andric  Values<"frames">;
104fe6060f1SDimitry Andric
105fe6060f1SDimitry Andricdef fault_map_section : Flag<["--"], "fault-map-section">,
106349cc55cSDimitry Andric  HelpText<"Display the content of the fault map section">;
107fe6060f1SDimitry Andric
10881ad6265SDimitry Andricdef offloading : Flag<["--"], "offloading">,
10981ad6265SDimitry Andric  HelpText<"Display the content of the offloading section">;
11081ad6265SDimitry Andric
111fe6060f1SDimitry Andricdef file_headers : Flag<["--"], "file-headers">,
112fe6060f1SDimitry Andric  HelpText<"Display the contents of the overall file header">;
113fe6060f1SDimitry Andricdef : Flag<["-"], "f">, Alias<file_headers>,
114fe6060f1SDimitry Andric  HelpText<"Alias for --file-headers">;
115fe6060f1SDimitry Andric
116fe6060f1SDimitry Andricdef full_contents : Flag<["--"], "full-contents">,
117fe6060f1SDimitry Andric  HelpText<"Display the content of each section">;
118fe6060f1SDimitry Andricdef : Flag<["-"], "s">, Alias<full_contents>,
119fe6060f1SDimitry Andric  HelpText<"Alias for --full-contents">;
120fe6060f1SDimitry Andric
121fe6060f1SDimitry Andricdef line_numbers : Flag<["--"], "line-numbers">,
122349cc55cSDimitry Andric  HelpText<"When disassembling, display source line numbers. "
123349cc55cSDimitry Andric           "Implies --disassemble">;
124349cc55cSDimitry Andricdef : Flag<["-"], "l">,
125349cc55cSDimitry Andric  Alias<line_numbers>,
126fe6060f1SDimitry Andric  HelpText<"Alias for --line-numbers">;
127fe6060f1SDimitry Andric
128fe6060f1SDimitry Andricdef macho : Flag<["--"], "macho">,
129fe6060f1SDimitry Andric  HelpText<"Use MachO specific object file parser">;
130fe6060f1SDimitry Andricdef : Flag<["-"], "m">, Alias<macho>, HelpText<"Alias for --macho">;
131fe6060f1SDimitry Andric
132fe6060f1SDimitry Andricdef mcpu_EQ : Joined<["--"], "mcpu=">,
133fe6060f1SDimitry Andric  MetaVarName<"cpu-name">,
134fe6060f1SDimitry Andric  HelpText<"Target a specific cpu type (--mcpu=help for details)">;
135fe6060f1SDimitry Andric
136fe6060f1SDimitry Andricdef mattr_EQ : Joined<["--"], "mattr=">,
137fe6060f1SDimitry Andric  MetaVarName<"a1,+a2,-a3,...">,
138fe6060f1SDimitry Andric  HelpText<"Target specific attributes (--mattr=help for details)">;
139fe6060f1SDimitry Andric
140cb14a3feSDimitry Andricdef mllvm : Separate<["-"], "mllvm">, HelpText<"Specify an argument to forward to LLVM's CommandLine library">, MetaVarName<"<arg>">;
141cb14a3feSDimitry Andricdef : Joined<["-"], "mllvm=">, Alias<mllvm>;
142cb14a3feSDimitry Andric
143fe6060f1SDimitry Andricdef no_show_raw_insn : Flag<["--"], "no-show-raw-insn">,
144fe6060f1SDimitry Andric  HelpText<"When disassembling instructions, "
145fe6060f1SDimitry Andric           "do not print the instruction bytes.">;
146fe6060f1SDimitry Andric
147fe6060f1SDimitry Andricdef no_leading_addr : Flag<["--"], "no-leading-addr">,
148bdd1243dSDimitry Andric  HelpText<"When disassembling, do not print leading addresses for instructions or inline relocations">;
149bdd1243dSDimitry Andricdef : Flag<["--"], "no-addresses">, Alias<no_leading_addr>,
150bdd1243dSDimitry Andric  HelpText<"Alias for --no-leading-addr">;
151fe6060f1SDimitry Andric
152fe6060f1SDimitry Andricdef raw_clang_ast : Flag<["--"], "raw-clang-ast">,
153fe6060f1SDimitry Andric  HelpText<"Dump the raw binary contents of the clang AST section">;
154fe6060f1SDimitry Andric
155fe6060f1SDimitry Andricdef reloc : Flag<["--"], "reloc">,
156fe6060f1SDimitry Andric  HelpText<"Display the relocation entries in the file">;
157fe6060f1SDimitry Andricdef : Flag<["-"], "r">, Alias<reloc>, HelpText<"Alias for --reloc">;
158fe6060f1SDimitry Andric
159fe6060f1SDimitry Andricdef print_imm_hex : Flag<["--"], "print-imm-hex">,
1601ac55f4cSDimitry Andric  HelpText<"Use hex format for immediate values (default)">;
161fe6060f1SDimitry Andric
162fe6060f1SDimitry Andricdef no_print_imm_hex : Flag<["--"], "no-print-imm-hex">,
1631ac55f4cSDimitry Andric  HelpText<"Do not use hex format for immediate values">;
164fe6060f1SDimitry Andricdef : Flag<["--"], "print-imm-hex=false">, Alias<no_print_imm_hex>;
165fe6060f1SDimitry Andric
166fe6060f1SDimitry Andricdef private_headers : Flag<["--"], "private-headers">,
167fe6060f1SDimitry Andric  HelpText<"Display format specific file headers">;
168fe6060f1SDimitry Andricdef : Flag<["-"], "p">, Alias<private_headers>,
169fe6060f1SDimitry Andric  HelpText<"Alias for --private-headers">;
170fe6060f1SDimitry Andric
171fe6060f1SDimitry Andricdef section_EQ : Joined<["--"], "section=">,
172fe6060f1SDimitry Andric  HelpText<"Operate on the specified sections only. "
173fe6060f1SDimitry Andric           "With --macho dump segment,section">;
174fe6060f1SDimitry Andricdef : Separate<["--"], "section">, Alias<section_EQ>;
175fe6060f1SDimitry Andricdef : JoinedOrSeparate<["-"], "j">, Alias<section_EQ>,
176fe6060f1SDimitry Andric  HelpText<"Alias for --section">;
177fe6060f1SDimitry Andric
178fe6060f1SDimitry Andricdef section_headers : Flag<["--"], "section-headers">,
179fe6060f1SDimitry Andric  HelpText<"Display summaries of the headers for each section.">;
180fe6060f1SDimitry Andricdef : Flag<["--"], "headers">, Alias<section_headers>,
181fe6060f1SDimitry Andric  HelpText<"Alias for --section-headers">;
182fe6060f1SDimitry Andricdef : Flag<["-"], "h">, Alias<section_headers>,
183fe6060f1SDimitry Andric  HelpText<"Alias for --section-headers">;
184fe6060f1SDimitry Andric
185bdd1243dSDimitry Andricdef show_all_symbols : Flag<["--"], "show-all-symbols">,
186bdd1243dSDimitry Andric  HelpText<"Show all symbols during disassembly, even if multiple "
187bdd1243dSDimitry Andric           "symbols are defined at the same location">;
188bdd1243dSDimitry Andric
189fe6060f1SDimitry Andricdef show_lma : Flag<["--"], "show-lma">,
190fe6060f1SDimitry Andric  HelpText<"Display LMA column when dumping ELF section headers">;
191fe6060f1SDimitry Andric
192fe6060f1SDimitry Andricdef source : Flag<["--"], "source">,
193349cc55cSDimitry Andric  HelpText<"When disassembling, display source interleaved with the "
194349cc55cSDimitry Andric           "disassembly. Implies --disassemble">;
195fe6060f1SDimitry Andricdef : Flag<["-"], "S">, Alias<source>, HelpText<"Alias for --source">;
196fe6060f1SDimitry Andric
197fe6060f1SDimitry Andricdef start_address_EQ : Joined<["--"], "start-address=">,
198fe6060f1SDimitry Andric  MetaVarName<"address">,
199349cc55cSDimitry Andric  HelpText<"Set the start address for disassembling, "
200349cc55cSDimitry Andric           "printing relocations and printing symbols">;
201fe6060f1SDimitry Andricdef stop_address_EQ : Joined<["--"], "stop-address=">,
202fe6060f1SDimitry Andric  MetaVarName<"address">,
203349cc55cSDimitry Andric  HelpText<"Set the stop address for disassembling, "
204349cc55cSDimitry Andric           "printing relocations and printing symbols">;
205fe6060f1SDimitry Andric
206fe6060f1SDimitry Andricdef syms : Flag<["--"], "syms">,
207fe6060f1SDimitry Andric  HelpText<"Display the symbol table">;
208fe6060f1SDimitry Andricdef : Flag<["-"], "t">, Alias<syms>, HelpText<"Alias for --syms">;
209fe6060f1SDimitry Andric
210fe6060f1SDimitry Andricdef symbolize_operands : Flag<["--"], "symbolize-operands">,
211fe6060f1SDimitry Andric  HelpText<"Symbolize instruction operands when disassembling">;
212fe6060f1SDimitry Andric
213*0fca6ea1SDimitry Andricdef pretty_pgo_analysis_map : Flag<["--"], "pretty-pgo-analysis-map">,
214*0fca6ea1SDimitry Andric                              HelpText<"Display PGO analysis values with "
215*0fca6ea1SDimitry Andric                                       "formatting rather than raw numbers">;
216*0fca6ea1SDimitry Andric
217fe6060f1SDimitry Andricdef dynamic_syms : Flag<["--"], "dynamic-syms">,
218fe6060f1SDimitry Andric  HelpText<"Display the contents of the dynamic symbol table">;
219fe6060f1SDimitry Andricdef : Flag<["-"], "T">, Alias<dynamic_syms>,
220fe6060f1SDimitry Andric  HelpText<"Alias for --dynamic-syms">;
221fe6060f1SDimitry Andric
222fe6060f1SDimitry Andricdef triple_EQ : Joined<["--"], "triple=">,
223fe6060f1SDimitry Andric  HelpText<"Target triple to disassemble for, "
224fe6060f1SDimitry Andric            "see --version for available targets">;
225fe6060f1SDimitry Andricdef : Separate<["--"], "triple">,
226fe6060f1SDimitry Andric  Alias<triple_EQ>;
227fe6060f1SDimitry Andric
228fe6060f1SDimitry Andricdef unwind_info : Flag<["--"], "unwind-info">,
229fe6060f1SDimitry Andric  HelpText<"Display unwind information">;
230fe6060f1SDimitry Andricdef : Flag<["-"], "u">, Alias<unwind_info>,
231fe6060f1SDimitry Andric  HelpText<"Alias for --unwind-info">;
232fe6060f1SDimitry Andric
233fe6060f1SDimitry Andricdef wide : Flag<["--"], "wide">,
234fe6060f1SDimitry Andric  HelpText<"Ignored for compatibility with GNU objdump">;
235fe6060f1SDimitry Andricdef : Flag<["-"], "w">, Alias<wide>;
236fe6060f1SDimitry Andric
237349cc55cSDimitry Andricdefm prefix : Eq<"prefix", "Add prefix to absolute paths">,
238349cc55cSDimitry Andric              MetaVarName<"prefix">;
239349cc55cSDimitry Andricdefm prefix_strip
240349cc55cSDimitry Andric    : Eq<"prefix-strip", "Strip out initial directories from absolute "
241349cc55cSDimitry Andric                         "paths. No effect without --prefix">,
242349cc55cSDimitry Andric      MetaVarName<"prefix">;
243fe6060f1SDimitry Andric
244fe6060f1SDimitry Andricdef debug_vars_EQ : Joined<["--"], "debug-vars=">,
245fe6060f1SDimitry Andric  HelpText<"Print the locations (in registers or memory) of "
246349cc55cSDimitry Andric           "source-level variables alongside disassembly. "
247349cc55cSDimitry Andric           "Supported formats: ascii, unicode (default)">,
248349cc55cSDimitry Andric  Values<"unicode,ascii">;
249349cc55cSDimitry Andricdef : Flag<["--"], "debug-vars">, Alias<debug_vars_EQ>, AliasArgs<["unicode"]>;
250fe6060f1SDimitry Andric
251fe6060f1SDimitry Andricdef debug_vars_indent_EQ : Joined<["--"], "debug-vars-indent=">,
252fe6060f1SDimitry Andric  HelpText<"Distance to indent the source-level variable display, "
253fe6060f1SDimitry Andric           "relative to the start of the disassembly">;
254fe6060f1SDimitry Andric
255fe6060f1SDimitry Andricdef x86_asm_syntax_att : Flag<["--"], "x86-asm-syntax=att">,
256fe6060f1SDimitry Andric  HelpText<"Emit AT&T-style disassembly">;
257fe6060f1SDimitry Andric
258fe6060f1SDimitry Andricdef x86_asm_syntax_intel : Flag<["--"], "x86-asm-syntax=intel">,
259fe6060f1SDimitry Andric  HelpText<"Emit Intel-style disassembly">;
260fe6060f1SDimitry Andric
261fe6060f1SDimitry Andric
262fe6060f1SDimitry Andricdef grp_mach_o : OptionGroup<"kind">, HelpText<"llvm-objdump MachO Specific Options">;
263fe6060f1SDimitry Andric
264fe6060f1SDimitry Andricdef private_header : Flag<["--"], "private-header">,
265fe6060f1SDimitry Andric  HelpText<"Display only the first format specific file header">,
266fe6060f1SDimitry Andric  Group<grp_mach_o>;
267fe6060f1SDimitry Andric
268fe6060f1SDimitry Andricdef exports_trie : Flag<["--"], "exports-trie">,
269fe6060f1SDimitry Andric  HelpText<"Display mach-o exported symbols">,
270fe6060f1SDimitry Andric  Group<grp_mach_o>;
271fe6060f1SDimitry Andric
272fe6060f1SDimitry Andricdef rebase : Flag<["--"], "rebase">,
273fe6060f1SDimitry Andric  HelpText<"Display mach-o rebasing info">,
274fe6060f1SDimitry Andric  Group<grp_mach_o>;
275fe6060f1SDimitry Andric
276fe6060f1SDimitry Andricdef bind : Flag<["--"], "bind">,
277fe6060f1SDimitry Andric  HelpText<"Display mach-o binding info">,
278fe6060f1SDimitry Andric  Group<grp_mach_o>;
279fe6060f1SDimitry Andric
280fe6060f1SDimitry Andricdef lazy_bind : Flag<["--"], "lazy-bind">,
281fe6060f1SDimitry Andric  HelpText<"Display mach-o lazy binding info">,
282fe6060f1SDimitry Andric  Group<grp_mach_o>;
283fe6060f1SDimitry Andric
284fe6060f1SDimitry Andricdef weak_bind : Flag<["--"], "weak-bind">,
285fe6060f1SDimitry Andric  HelpText<"Display mach-o weak binding info">,
286fe6060f1SDimitry Andric  Group<grp_mach_o>;
287fe6060f1SDimitry Andric
288fe6060f1SDimitry Andricdef g : Flag<["-"], "g">,
289fe6060f1SDimitry Andric  HelpText<"Print line information from debug info if available">,
290fe6060f1SDimitry Andric  Group<grp_mach_o>;
291fe6060f1SDimitry Andric
292fe6060f1SDimitry Andricdef dsym_EQ : Joined<["--"], "dsym=">,
293fe6060f1SDimitry Andric  HelpText<"Use .dSYM file for debug info">,
294fe6060f1SDimitry Andric  Group<grp_mach_o>;
295fe6060f1SDimitry Andricdef : Separate<["--"], "dsym">,
296fe6060f1SDimitry Andric  Alias<dsym_EQ>,
297fe6060f1SDimitry Andric  Group<grp_mach_o>;
298fe6060f1SDimitry Andric
299fe6060f1SDimitry Andricdef full_leading_addr : Flag<["--"], "full-leading-addr">,
300fe6060f1SDimitry Andric  HelpText<"Print full leading address">,
301fe6060f1SDimitry Andric  Group<grp_mach_o>;
302fe6060f1SDimitry Andric
303fe6060f1SDimitry Andricdef no_leading_headers : Flag<["--"], "no-leading-headers">,
304fe6060f1SDimitry Andric  HelpText<"Print no leading headers">,
305fe6060f1SDimitry Andric  Group<grp_mach_o>;
306fe6060f1SDimitry Andric
307fe6060f1SDimitry Andricdef universal_headers : Flag<["--"], "universal-headers">,
308fe6060f1SDimitry Andric  HelpText<"Print Mach-O universal headers (requires --macho)">,
309fe6060f1SDimitry Andric  Group<grp_mach_o>;
310fe6060f1SDimitry Andric
311fe6060f1SDimitry Andricdef archive_member_offsets : Flag<["--"], "archive-member-offsets">,
312fe6060f1SDimitry Andric  HelpText<"Print the offset to each archive member for Mach-O archives "
313fe6060f1SDimitry Andric           "(requires --macho and --archive-headers)">,
314fe6060f1SDimitry Andric  Group<grp_mach_o>;
315fe6060f1SDimitry Andric
316fe6060f1SDimitry Andricdef indirect_symbols : Flag<["--"], "indirect-symbols">,
317fe6060f1SDimitry Andric  HelpText<"Print indirect symbol table for Mach-O objects (requires --macho)">,
318fe6060f1SDimitry Andric  Group<grp_mach_o>;
319fe6060f1SDimitry Andric
320fe6060f1SDimitry Andricdef data_in_code : Flag<["--"], "data-in-code">,
321fe6060f1SDimitry Andric  HelpText<"Print the data in code table for Mach-O objects (requires --macho)">,
322fe6060f1SDimitry Andric  Group<grp_mach_o>;
323fe6060f1SDimitry Andric
324bdd1243dSDimitry Andricdef function_starts_EQ : Joined<["--"], "function-starts=">,
325bdd1243dSDimitry Andric  HelpText<"Print the function starts table for Mach-O objects. "
326bdd1243dSDimitry Andric           "Options: addrs (default), names, both (requires --macho)">,
327bdd1243dSDimitry Andric  Values<"addrs,names,both">,
328fe6060f1SDimitry Andric  Group<grp_mach_o>;
329fe6060f1SDimitry Andric
330bdd1243dSDimitry Andricdef : Flag<["--"], "function-starts">, Alias<function_starts_EQ>,
331bdd1243dSDimitry Andric  AliasArgs<["addrs"]>, Group<grp_mach_o>;
332bdd1243dSDimitry Andric
333fe6060f1SDimitry Andricdef link_opt_hints : Flag<["--"], "link-opt-hints">,
334fe6060f1SDimitry Andric  HelpText<"Print the linker optimization hints for "
335fe6060f1SDimitry Andric           "Mach-O objects (requires --macho)">,
336fe6060f1SDimitry Andric  Group<grp_mach_o>;
337fe6060f1SDimitry Andric
338fe6060f1SDimitry Andricdef info_plist : Flag<["--"], "info-plist">,
339fe6060f1SDimitry Andric  HelpText<"Print the info plist section as strings for "
340fe6060f1SDimitry Andric           "Mach-O objects (requires --macho)">,
341fe6060f1SDimitry Andric  Group<grp_mach_o>;
342fe6060f1SDimitry Andric
343bdd1243dSDimitry Andricdef chained_fixups : Flag<["--"], "chained-fixups">,
344bdd1243dSDimitry Andric  HelpText<"Print chained fixup information (requires --macho)">,
345bdd1243dSDimitry Andric  Group<grp_mach_o>;
346bdd1243dSDimitry Andric
347bdd1243dSDimitry Andricdef dyld_info : Flag<["--"], "dyld-info">,
34881ad6265SDimitry Andric  HelpText<"Print bind and rebase information used by dyld to resolve "
34981ad6265SDimitry Andric           "external references in a final linked binary "
35081ad6265SDimitry Andric           "(requires --macho)">,
35181ad6265SDimitry Andric  Group<grp_mach_o>;
35281ad6265SDimitry Andric
353fe6060f1SDimitry Andricdef dylibs_used : Flag<["--"], "dylibs-used">,
354fe6060f1SDimitry Andric  HelpText<"Print the shared libraries used for linked "
355fe6060f1SDimitry Andric           "Mach-O files (requires --macho)">,
356fe6060f1SDimitry Andric  Group<grp_mach_o>;
357fe6060f1SDimitry Andric
358fe6060f1SDimitry Andricdef dylib_id : Flag<["--"], "dylib-id">,
359fe6060f1SDimitry Andric  HelpText<"Print the shared library's id for the "
360fe6060f1SDimitry Andric           "dylib Mach-O file (requires --macho)">,
361fe6060f1SDimitry Andric  Group<grp_mach_o>;
362fe6060f1SDimitry Andric
363fe6060f1SDimitry Andricdef rpaths : Flag<["--"], "rpaths">,
364fe6060f1SDimitry Andric  HelpText<"Print the runtime search paths for the "
365fe6060f1SDimitry Andric           "Mach-O file (requires --macho)">,
366fe6060f1SDimitry Andric  Group<grp_mach_o>;
367fe6060f1SDimitry Andric
368fe6060f1SDimitry Andricdef non_verbose : Flag<["--"], "non-verbose">,
369fe6060f1SDimitry Andric  HelpText<"Print the info for Mach-O objects in non-verbose or "
370fe6060f1SDimitry Andric           "numeric form (requires --macho)">,
371fe6060f1SDimitry Andric  Group<grp_mach_o>;
372fe6060f1SDimitry Andric
373fe6060f1SDimitry Andricdef objc_meta_data : Flag<["--"], "objc-meta-data">,
374fe6060f1SDimitry Andric  HelpText<"Print the Objective-C runtime meta data "
375fe6060f1SDimitry Andric           "for Mach-O files (requires --macho)">,
376fe6060f1SDimitry Andric  Group<grp_mach_o>;
377fe6060f1SDimitry Andric
378fe6060f1SDimitry Andricdef dis_symname : Separate<["--"], "dis-symname">,
379fe6060f1SDimitry Andric  HelpText<"disassemble just this symbol's instructions (requires --macho)">,
380fe6060f1SDimitry Andric  Group<grp_mach_o>;
381fe6060f1SDimitry Andric
382fe6060f1SDimitry Andricdef no_symbolic_operands : Flag<["--"], "no-symbolic-operands">,
383fe6060f1SDimitry Andric  HelpText<"do not symbolic operands when disassembling (requires --macho)">,
384fe6060f1SDimitry Andric  Group<grp_mach_o>;
385fe6060f1SDimitry Andric
386fe6060f1SDimitry Andricdef arch_EQ : Joined<["--"], "arch=">,
387fe6060f1SDimitry Andric  HelpText<"architecture(s) from a Mach-O file to dump">,
388fe6060f1SDimitry Andric  Group<grp_mach_o>;
389fe6060f1SDimitry Andricdef : Separate<["--"], "arch">,
390fe6060f1SDimitry Andric  Alias<arch_EQ>,
391fe6060f1SDimitry Andric  Group<grp_mach_o>;
392