xref: /freebsd-src/contrib/llvm-project/llvm/tools/llvm-objdump/ObjdumpOpts.td (revision 1ac55f4cb0001fed92329746c730aa9a947c09a5)
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 "
68fe6060f1SDimitry Andric           "option is for XCOFF files only.">;
69fe6060f1SDimitry Andric
70fe6060f1SDimitry Andricdef disassemble_symbols_EQ : Joined<["--"], "disassemble-symbols=">,
71fe6060f1SDimitry Andric  HelpText<"List of symbols to disassemble. "
72fe6060f1SDimitry Andric           "Accept demangled names when --demangle is "
73fe6060f1SDimitry Andric           "specified, otherwise accept mangled names">;
74fe6060f1SDimitry Andric
75fe6060f1SDimitry Andricdef disassemble_zeroes : Flag<["--"], "disassemble-zeroes">,
76fe6060f1SDimitry Andric  HelpText<"Do not skip blocks of zeroes when disassembling">;
77fe6060f1SDimitry Andricdef : Flag<["-"], "z">, Alias<disassemble_zeroes>,
78fe6060f1SDimitry Andric  HelpText<"Alias for --disassemble-zeroes">;
79fe6060f1SDimitry Andric
80fe6060f1SDimitry Andricdef disassembler_options_EQ : Joined<["--"], "disassembler-options=">,
81fe6060f1SDimitry Andric  MetaVarName<"options">,
82fe6060f1SDimitry Andric  HelpText<"Pass target specific disassembler options">;
83fe6060f1SDimitry Andricdef : JoinedOrSeparate<["-"], "M">, Alias<disassembler_options_EQ>,
84fe6060f1SDimitry Andric  HelpText<"Alias for --disassembler-options=">;
85fe6060f1SDimitry Andric
86fe6060f1SDimitry Andricdef dynamic_reloc : Flag<["--"], "dynamic-reloc">,
87fe6060f1SDimitry Andric  HelpText<"Display the dynamic relocation entries in the file">;
88fe6060f1SDimitry Andricdef : Flag<["-"], "R">, Alias<dynamic_reloc>,
89fe6060f1SDimitry Andric  HelpText<"Alias for --dynamic-reloc">;
90fe6060f1SDimitry Andric
91fe6060f1SDimitry Andricdef dwarf_EQ : Joined<["--"], "dwarf=">,
92349cc55cSDimitry Andric  HelpText<"Dump the specified DWARF debug sections. The "
93349cc55cSDimitry Andric           "only supported value is 'frames'">,
94349cc55cSDimitry Andric  Values<"frames">;
95fe6060f1SDimitry Andric
96fe6060f1SDimitry Andricdef fault_map_section : Flag<["--"], "fault-map-section">,
97349cc55cSDimitry Andric  HelpText<"Display the content of the fault map section">;
98fe6060f1SDimitry Andric
9981ad6265SDimitry Andricdef offloading : Flag<["--"], "offloading">,
10081ad6265SDimitry Andric  HelpText<"Display the content of the offloading section">;
10181ad6265SDimitry Andric
102fe6060f1SDimitry Andricdef file_headers : Flag<["--"], "file-headers">,
103fe6060f1SDimitry Andric  HelpText<"Display the contents of the overall file header">;
104fe6060f1SDimitry Andricdef : Flag<["-"], "f">, Alias<file_headers>,
105fe6060f1SDimitry Andric  HelpText<"Alias for --file-headers">;
106fe6060f1SDimitry Andric
107fe6060f1SDimitry Andricdef full_contents : Flag<["--"], "full-contents">,
108fe6060f1SDimitry Andric  HelpText<"Display the content of each section">;
109fe6060f1SDimitry Andricdef : Flag<["-"], "s">, Alias<full_contents>,
110fe6060f1SDimitry Andric  HelpText<"Alias for --full-contents">;
111fe6060f1SDimitry Andric
112fe6060f1SDimitry Andricdef line_numbers : Flag<["--"], "line-numbers">,
113349cc55cSDimitry Andric  HelpText<"When disassembling, display source line numbers. "
114349cc55cSDimitry Andric           "Implies --disassemble">;
115349cc55cSDimitry Andricdef : Flag<["-"], "l">,
116349cc55cSDimitry Andric  Alias<line_numbers>,
117fe6060f1SDimitry Andric  HelpText<"Alias for --line-numbers">;
118fe6060f1SDimitry Andric
119fe6060f1SDimitry Andricdef macho : Flag<["--"], "macho">,
120fe6060f1SDimitry Andric  HelpText<"Use MachO specific object file parser">;
121fe6060f1SDimitry Andricdef : Flag<["-"], "m">, Alias<macho>, HelpText<"Alias for --macho">;
122fe6060f1SDimitry Andric
123fe6060f1SDimitry Andricdef mcpu_EQ : Joined<["--"], "mcpu=">,
124fe6060f1SDimitry Andric  MetaVarName<"cpu-name">,
125fe6060f1SDimitry Andric  HelpText<"Target a specific cpu type (--mcpu=help for details)">;
126fe6060f1SDimitry Andric
127fe6060f1SDimitry Andricdef mattr_EQ : Joined<["--"], "mattr=">,
128fe6060f1SDimitry Andric  MetaVarName<"a1,+a2,-a3,...">,
129fe6060f1SDimitry Andric  HelpText<"Target specific attributes (--mattr=help for details)">;
130fe6060f1SDimitry Andric
131fe6060f1SDimitry Andricdef no_show_raw_insn : Flag<["--"], "no-show-raw-insn">,
132fe6060f1SDimitry Andric  HelpText<"When disassembling instructions, "
133fe6060f1SDimitry Andric           "do not print the instruction bytes.">;
134fe6060f1SDimitry Andric
135fe6060f1SDimitry Andricdef no_leading_addr : Flag<["--"], "no-leading-addr">,
136bdd1243dSDimitry Andric  HelpText<"When disassembling, do not print leading addresses for instructions or inline relocations">;
137bdd1243dSDimitry Andricdef : Flag<["--"], "no-addresses">, Alias<no_leading_addr>,
138bdd1243dSDimitry Andric  HelpText<"Alias for --no-leading-addr">;
139fe6060f1SDimitry Andric
140fe6060f1SDimitry Andricdef raw_clang_ast : Flag<["--"], "raw-clang-ast">,
141fe6060f1SDimitry Andric  HelpText<"Dump the raw binary contents of the clang AST section">;
142fe6060f1SDimitry Andric
143fe6060f1SDimitry Andricdef reloc : Flag<["--"], "reloc">,
144fe6060f1SDimitry Andric  HelpText<"Display the relocation entries in the file">;
145fe6060f1SDimitry Andricdef : Flag<["-"], "r">, Alias<reloc>, HelpText<"Alias for --reloc">;
146fe6060f1SDimitry Andric
147fe6060f1SDimitry Andricdef print_imm_hex : Flag<["--"], "print-imm-hex">,
148*1ac55f4cSDimitry Andric  HelpText<"Use hex format for immediate values (default)">;
149fe6060f1SDimitry Andric
150fe6060f1SDimitry Andricdef no_print_imm_hex : Flag<["--"], "no-print-imm-hex">,
151*1ac55f4cSDimitry Andric  HelpText<"Do not use hex format for immediate values">;
152fe6060f1SDimitry Andricdef : Flag<["--"], "print-imm-hex=false">, Alias<no_print_imm_hex>;
153fe6060f1SDimitry Andric
154fe6060f1SDimitry Andricdef private_headers : Flag<["--"], "private-headers">,
155fe6060f1SDimitry Andric  HelpText<"Display format specific file headers">;
156fe6060f1SDimitry Andricdef : Flag<["-"], "p">, Alias<private_headers>,
157fe6060f1SDimitry Andric  HelpText<"Alias for --private-headers">;
158fe6060f1SDimitry Andric
159fe6060f1SDimitry Andricdef section_EQ : Joined<["--"], "section=">,
160fe6060f1SDimitry Andric  HelpText<"Operate on the specified sections only. "
161fe6060f1SDimitry Andric           "With --macho dump segment,section">;
162fe6060f1SDimitry Andricdef : Separate<["--"], "section">, Alias<section_EQ>;
163fe6060f1SDimitry Andricdef : JoinedOrSeparate<["-"], "j">, Alias<section_EQ>,
164fe6060f1SDimitry Andric  HelpText<"Alias for --section">;
165fe6060f1SDimitry Andric
166fe6060f1SDimitry Andricdef section_headers : Flag<["--"], "section-headers">,
167fe6060f1SDimitry Andric  HelpText<"Display summaries of the headers for each section.">;
168fe6060f1SDimitry Andricdef : Flag<["--"], "headers">, Alias<section_headers>,
169fe6060f1SDimitry Andric  HelpText<"Alias for --section-headers">;
170fe6060f1SDimitry Andricdef : Flag<["-"], "h">, Alias<section_headers>,
171fe6060f1SDimitry Andric  HelpText<"Alias for --section-headers">;
172fe6060f1SDimitry Andric
173bdd1243dSDimitry Andricdef show_all_symbols : Flag<["--"], "show-all-symbols">,
174bdd1243dSDimitry Andric  HelpText<"Show all symbols during disassembly, even if multiple "
175bdd1243dSDimitry Andric           "symbols are defined at the same location">;
176bdd1243dSDimitry Andric
177fe6060f1SDimitry Andricdef show_lma : Flag<["--"], "show-lma">,
178fe6060f1SDimitry Andric  HelpText<"Display LMA column when dumping ELF section headers">;
179fe6060f1SDimitry Andric
180fe6060f1SDimitry Andricdef source : Flag<["--"], "source">,
181349cc55cSDimitry Andric  HelpText<"When disassembling, display source interleaved with the "
182349cc55cSDimitry Andric           "disassembly. Implies --disassemble">;
183fe6060f1SDimitry Andricdef : Flag<["-"], "S">, Alias<source>, HelpText<"Alias for --source">;
184fe6060f1SDimitry Andric
185fe6060f1SDimitry Andricdef start_address_EQ : Joined<["--"], "start-address=">,
186fe6060f1SDimitry Andric  MetaVarName<"address">,
187349cc55cSDimitry Andric  HelpText<"Set the start address for disassembling, "
188349cc55cSDimitry Andric           "printing relocations and printing symbols">;
189fe6060f1SDimitry Andricdef stop_address_EQ : Joined<["--"], "stop-address=">,
190fe6060f1SDimitry Andric  MetaVarName<"address">,
191349cc55cSDimitry Andric  HelpText<"Set the stop address for disassembling, "
192349cc55cSDimitry Andric           "printing relocations and printing symbols">;
193fe6060f1SDimitry Andric
194fe6060f1SDimitry Andricdef syms : Flag<["--"], "syms">,
195fe6060f1SDimitry Andric  HelpText<"Display the symbol table">;
196fe6060f1SDimitry Andricdef : Flag<["-"], "t">, Alias<syms>, HelpText<"Alias for --syms">;
197fe6060f1SDimitry Andric
198fe6060f1SDimitry Andricdef symbolize_operands : Flag<["--"], "symbolize-operands">,
199fe6060f1SDimitry Andric  HelpText<"Symbolize instruction operands when disassembling">;
200fe6060f1SDimitry Andric
201fe6060f1SDimitry Andricdef dynamic_syms : Flag<["--"], "dynamic-syms">,
202fe6060f1SDimitry Andric  HelpText<"Display the contents of the dynamic symbol table">;
203fe6060f1SDimitry Andricdef : Flag<["-"], "T">, Alias<dynamic_syms>,
204fe6060f1SDimitry Andric  HelpText<"Alias for --dynamic-syms">;
205fe6060f1SDimitry Andric
206fe6060f1SDimitry Andricdef triple_EQ : Joined<["--"], "triple=">,
207fe6060f1SDimitry Andric  HelpText<"Target triple to disassemble for, "
208fe6060f1SDimitry Andric            "see --version for available targets">;
209fe6060f1SDimitry Andricdef : Separate<["--"], "triple">,
210fe6060f1SDimitry Andric  Alias<triple_EQ>;
211fe6060f1SDimitry Andric
212fe6060f1SDimitry Andricdef unwind_info : Flag<["--"], "unwind-info">,
213fe6060f1SDimitry Andric  HelpText<"Display unwind information">;
214fe6060f1SDimitry Andricdef : Flag<["-"], "u">, Alias<unwind_info>,
215fe6060f1SDimitry Andric  HelpText<"Alias for --unwind-info">;
216fe6060f1SDimitry Andric
217fe6060f1SDimitry Andricdef wide : Flag<["--"], "wide">,
218fe6060f1SDimitry Andric  HelpText<"Ignored for compatibility with GNU objdump">;
219fe6060f1SDimitry Andricdef : Flag<["-"], "w">, Alias<wide>;
220fe6060f1SDimitry Andric
221349cc55cSDimitry Andricdefm prefix : Eq<"prefix", "Add prefix to absolute paths">,
222349cc55cSDimitry Andric              MetaVarName<"prefix">;
223349cc55cSDimitry Andricdefm prefix_strip
224349cc55cSDimitry Andric    : Eq<"prefix-strip", "Strip out initial directories from absolute "
225349cc55cSDimitry Andric                         "paths. No effect without --prefix">,
226349cc55cSDimitry Andric      MetaVarName<"prefix">;
227fe6060f1SDimitry Andric
228fe6060f1SDimitry Andricdef debug_vars_EQ : Joined<["--"], "debug-vars=">,
229fe6060f1SDimitry Andric  HelpText<"Print the locations (in registers or memory) of "
230349cc55cSDimitry Andric           "source-level variables alongside disassembly. "
231349cc55cSDimitry Andric           "Supported formats: ascii, unicode (default)">,
232349cc55cSDimitry Andric  Values<"unicode,ascii">;
233349cc55cSDimitry Andricdef : Flag<["--"], "debug-vars">, Alias<debug_vars_EQ>, AliasArgs<["unicode"]>;
234fe6060f1SDimitry Andric
235fe6060f1SDimitry Andricdef debug_vars_indent_EQ : Joined<["--"], "debug-vars-indent=">,
236fe6060f1SDimitry Andric  HelpText<"Distance to indent the source-level variable display, "
237fe6060f1SDimitry Andric           "relative to the start of the disassembly">;
238fe6060f1SDimitry Andric
239fe6060f1SDimitry Andricdef x86_asm_syntax_att : Flag<["--"], "x86-asm-syntax=att">,
240fe6060f1SDimitry Andric  HelpText<"Emit AT&T-style disassembly">;
241fe6060f1SDimitry Andric
242fe6060f1SDimitry Andricdef x86_asm_syntax_intel : Flag<["--"], "x86-asm-syntax=intel">,
243fe6060f1SDimitry Andric  HelpText<"Emit Intel-style disassembly">;
244fe6060f1SDimitry Andric
245fe6060f1SDimitry Andric
246fe6060f1SDimitry Andricdef grp_mach_o : OptionGroup<"kind">, HelpText<"llvm-objdump MachO Specific Options">;
247fe6060f1SDimitry Andric
248fe6060f1SDimitry Andricdef private_header : Flag<["--"], "private-header">,
249fe6060f1SDimitry Andric  HelpText<"Display only the first format specific file header">,
250fe6060f1SDimitry Andric  Group<grp_mach_o>;
251fe6060f1SDimitry Andric
252fe6060f1SDimitry Andricdef exports_trie : Flag<["--"], "exports-trie">,
253fe6060f1SDimitry Andric  HelpText<"Display mach-o exported symbols">,
254fe6060f1SDimitry Andric  Group<grp_mach_o>;
255fe6060f1SDimitry Andric
256fe6060f1SDimitry Andricdef rebase : Flag<["--"], "rebase">,
257fe6060f1SDimitry Andric  HelpText<"Display mach-o rebasing info">,
258fe6060f1SDimitry Andric  Group<grp_mach_o>;
259fe6060f1SDimitry Andric
260fe6060f1SDimitry Andricdef bind : Flag<["--"], "bind">,
261fe6060f1SDimitry Andric  HelpText<"Display mach-o binding info">,
262fe6060f1SDimitry Andric  Group<grp_mach_o>;
263fe6060f1SDimitry Andric
264fe6060f1SDimitry Andricdef lazy_bind : Flag<["--"], "lazy-bind">,
265fe6060f1SDimitry Andric  HelpText<"Display mach-o lazy binding info">,
266fe6060f1SDimitry Andric  Group<grp_mach_o>;
267fe6060f1SDimitry Andric
268fe6060f1SDimitry Andricdef weak_bind : Flag<["--"], "weak-bind">,
269fe6060f1SDimitry Andric  HelpText<"Display mach-o weak binding info">,
270fe6060f1SDimitry Andric  Group<grp_mach_o>;
271fe6060f1SDimitry Andric
272fe6060f1SDimitry Andricdef g : Flag<["-"], "g">,
273fe6060f1SDimitry Andric  HelpText<"Print line information from debug info if available">,
274fe6060f1SDimitry Andric  Group<grp_mach_o>;
275fe6060f1SDimitry Andric
276fe6060f1SDimitry Andricdef dsym_EQ : Joined<["--"], "dsym=">,
277fe6060f1SDimitry Andric  HelpText<"Use .dSYM file for debug info">,
278fe6060f1SDimitry Andric  Group<grp_mach_o>;
279fe6060f1SDimitry Andricdef : Separate<["--"], "dsym">,
280fe6060f1SDimitry Andric  Alias<dsym_EQ>,
281fe6060f1SDimitry Andric  Group<grp_mach_o>;
282fe6060f1SDimitry Andric
283fe6060f1SDimitry Andricdef full_leading_addr : Flag<["--"], "full-leading-addr">,
284fe6060f1SDimitry Andric  HelpText<"Print full leading address">,
285fe6060f1SDimitry Andric  Group<grp_mach_o>;
286fe6060f1SDimitry Andric
287fe6060f1SDimitry Andricdef no_leading_headers : Flag<["--"], "no-leading-headers">,
288fe6060f1SDimitry Andric  HelpText<"Print no leading headers">,
289fe6060f1SDimitry Andric  Group<grp_mach_o>;
290fe6060f1SDimitry Andric
291fe6060f1SDimitry Andricdef universal_headers : Flag<["--"], "universal-headers">,
292fe6060f1SDimitry Andric  HelpText<"Print Mach-O universal headers (requires --macho)">,
293fe6060f1SDimitry Andric  Group<grp_mach_o>;
294fe6060f1SDimitry Andric
295fe6060f1SDimitry Andricdef archive_member_offsets : Flag<["--"], "archive-member-offsets">,
296fe6060f1SDimitry Andric  HelpText<"Print the offset to each archive member for Mach-O archives "
297fe6060f1SDimitry Andric           "(requires --macho and --archive-headers)">,
298fe6060f1SDimitry Andric  Group<grp_mach_o>;
299fe6060f1SDimitry Andric
300fe6060f1SDimitry Andricdef indirect_symbols : Flag<["--"], "indirect-symbols">,
301fe6060f1SDimitry Andric  HelpText<"Print indirect symbol table for Mach-O objects (requires --macho)">,
302fe6060f1SDimitry Andric  Group<grp_mach_o>;
303fe6060f1SDimitry Andric
304fe6060f1SDimitry Andricdef data_in_code : Flag<["--"], "data-in-code">,
305fe6060f1SDimitry Andric  HelpText<"Print the data in code table for Mach-O objects (requires --macho)">,
306fe6060f1SDimitry Andric  Group<grp_mach_o>;
307fe6060f1SDimitry Andric
308bdd1243dSDimitry Andricdef function_starts_EQ : Joined<["--"], "function-starts=">,
309bdd1243dSDimitry Andric  HelpText<"Print the function starts table for Mach-O objects. "
310bdd1243dSDimitry Andric           "Options: addrs (default), names, both (requires --macho)">,
311bdd1243dSDimitry Andric  Values<"addrs,names,both">,
312fe6060f1SDimitry Andric  Group<grp_mach_o>;
313fe6060f1SDimitry Andric
314bdd1243dSDimitry Andricdef : Flag<["--"], "function-starts">, Alias<function_starts_EQ>,
315bdd1243dSDimitry Andric  AliasArgs<["addrs"]>, Group<grp_mach_o>;
316bdd1243dSDimitry Andric
317fe6060f1SDimitry Andricdef link_opt_hints : Flag<["--"], "link-opt-hints">,
318fe6060f1SDimitry Andric  HelpText<"Print the linker optimization hints for "
319fe6060f1SDimitry Andric           "Mach-O objects (requires --macho)">,
320fe6060f1SDimitry Andric  Group<grp_mach_o>;
321fe6060f1SDimitry Andric
322fe6060f1SDimitry Andricdef info_plist : Flag<["--"], "info-plist">,
323fe6060f1SDimitry Andric  HelpText<"Print the info plist section as strings for "
324fe6060f1SDimitry Andric           "Mach-O objects (requires --macho)">,
325fe6060f1SDimitry Andric  Group<grp_mach_o>;
326fe6060f1SDimitry Andric
327bdd1243dSDimitry Andricdef chained_fixups : Flag<["--"], "chained-fixups">,
328bdd1243dSDimitry Andric  HelpText<"Print chained fixup information (requires --macho)">,
329bdd1243dSDimitry Andric  Group<grp_mach_o>;
330bdd1243dSDimitry Andric
331bdd1243dSDimitry Andricdef dyld_info : Flag<["--"], "dyld-info">,
33281ad6265SDimitry Andric  HelpText<"Print bind and rebase information used by dyld to resolve "
33381ad6265SDimitry Andric           "external references in a final linked binary "
33481ad6265SDimitry Andric           "(requires --macho)">,
33581ad6265SDimitry Andric  Group<grp_mach_o>;
33681ad6265SDimitry Andric
337fe6060f1SDimitry Andricdef dylibs_used : Flag<["--"], "dylibs-used">,
338fe6060f1SDimitry Andric  HelpText<"Print the shared libraries used for linked "
339fe6060f1SDimitry Andric           "Mach-O files (requires --macho)">,
340fe6060f1SDimitry Andric  Group<grp_mach_o>;
341fe6060f1SDimitry Andric
342fe6060f1SDimitry Andricdef dylib_id : Flag<["--"], "dylib-id">,
343fe6060f1SDimitry Andric  HelpText<"Print the shared library's id for the "
344fe6060f1SDimitry Andric           "dylib Mach-O file (requires --macho)">,
345fe6060f1SDimitry Andric  Group<grp_mach_o>;
346fe6060f1SDimitry Andric
347fe6060f1SDimitry Andricdef rpaths : Flag<["--"], "rpaths">,
348fe6060f1SDimitry Andric  HelpText<"Print the runtime search paths for the "
349fe6060f1SDimitry Andric           "Mach-O file (requires --macho)">,
350fe6060f1SDimitry Andric  Group<grp_mach_o>;
351fe6060f1SDimitry Andric
352fe6060f1SDimitry Andricdef non_verbose : Flag<["--"], "non-verbose">,
353fe6060f1SDimitry Andric  HelpText<"Print the info for Mach-O objects in non-verbose or "
354fe6060f1SDimitry Andric           "numeric form (requires --macho)">,
355fe6060f1SDimitry Andric  Group<grp_mach_o>;
356fe6060f1SDimitry Andric
357fe6060f1SDimitry Andricdef objc_meta_data : Flag<["--"], "objc-meta-data">,
358fe6060f1SDimitry Andric  HelpText<"Print the Objective-C runtime meta data "
359fe6060f1SDimitry Andric           "for Mach-O files (requires --macho)">,
360fe6060f1SDimitry Andric  Group<grp_mach_o>;
361fe6060f1SDimitry Andric
362fe6060f1SDimitry Andricdef dis_symname : Separate<["--"], "dis-symname">,
363fe6060f1SDimitry Andric  HelpText<"disassemble just this symbol's instructions (requires --macho)">,
364fe6060f1SDimitry Andric  Group<grp_mach_o>;
365fe6060f1SDimitry Andric
366fe6060f1SDimitry Andricdef no_symbolic_operands : Flag<["--"], "no-symbolic-operands">,
367fe6060f1SDimitry Andric  HelpText<"do not symbolic operands when disassembling (requires --macho)">,
368fe6060f1SDimitry Andric  Group<grp_mach_o>;
369fe6060f1SDimitry Andric
370fe6060f1SDimitry Andricdef arch_EQ : Joined<["--"], "arch=">,
371fe6060f1SDimitry Andric  HelpText<"architecture(s) from a Mach-O file to dump">,
372fe6060f1SDimitry Andric  Group<grp_mach_o>;
373fe6060f1SDimitry Andricdef : Separate<["--"], "arch">,
374fe6060f1SDimitry Andric  Alias<arch_EQ>,
375fe6060f1SDimitry Andric  Group<grp_mach_o>;
376