1include "llvm/Option/OptParser.td"
2
3def help : Flag<["--"], "help">, HelpText<"print help">;
4def help_hidden : Flag<["--"], "help-hidden">,
5  HelpText<"print help for hidden flags">;
6
7def arch : Separate<["-"], "arch">,
8  HelpText<"select slice of universal Mach-O file">;
9def C : Flag<["-"], "C">, HelpText<"print linker optimization hints">;
10def d : Flag<["-"], "d">, HelpText<"print data section">;
11def D : Flag<["-"], "D">, HelpText<"print shared library id">;
12def f : Flag<["-"], "f">, HelpText<"print universal headers">;
13def G : Flag<["-"], "G">, HelpText<"print data-in-code table">;
14def h : Flag<["-"], "h">, HelpText<"print mach header">;
15def I : Flag<["-"], "I">, HelpText<"print indirect symbol table">;
16def j : Flag<["-"], "j">, HelpText<"print opcode bytes">;
17def l : Flag<["-"], "l">, HelpText<"print load commnads">;
18def L : Flag<["-"], "L">, HelpText<"print used shared libraries">;
19def mcpu_EQ : Joined<["-"], "mcpu=">, HelpText<"select cpu for disassembly">;
20def o : Flag<["-"], "o">, HelpText<"print Objective-C segment">;
21def p : Separate<["-"], "p">,
22  MetaVarName<"<function name>">,
23  HelpText<"start disassembly at <function name>">;
24def P : Flag<["-"], "P">, HelpText<"print __TEXT,__info_plist section as strings">;
25def : Flag<["-"], "q">, Flags<[HelpHidden]>,
26  HelpText<"use LLVM's disassembler (default)">;
27def r : Flag<["-"], "r">, HelpText<"print relocation entries">;
28def s : MultiArg<["-"], "s", 2>,
29  MetaVarName<"<segname> <sectname>">,
30  HelpText<"print contents of section">;
31def t : Flag<["-"], "t">, HelpText<"print text section">;
32def version : Flag<["--"], "version">, HelpText<"print version">;
33def v : Flag<["-"], "v">,
34  HelpText<"verbose output / disassemble when printing text sections">;
35def V : Flag<["-"], "V">,
36  HelpText<"symbolize disassembled operands (implies -v)">;
37def x : Flag<["-"], "x">, HelpText<"print all text sections">;
38def X : Flag<["-"], "X">, HelpText<"omit leading addresses or headers">;
39
40// Not (yet?) implemented:
41// def a : Flag<["-"], "a">, HelpText<"print archive header">;
42// -c print argument strings of a core file
43// -m don't use archive(member) syntax
44// -dyld_info
45// -dyld_opcodes
46// -chained_fixups
47// -addr_slide=arg
48// -function_offsets
49
50// Obsolete and unsupported:
51def grp_obsolete : OptionGroup<"kind">,
52  HelpText<"Obsolete and unsupported flags">;
53
54def : Flag<["-"], "B">, Flags<[HelpHidden]>, Group<grp_obsolete>,
55  HelpText<"force Thum disassembly (ARM 32-bit objects only)">;
56def : Flag<["-"], "H">, Flags<[HelpHidden]>, Group<grp_obsolete>,
57  HelpText<"print two-level hints table">;
58def : Flag<["-"], "M">, Flags<[HelpHidden]>, Group<grp_obsolete>,
59  HelpText<"print module table of shared library">;
60def : Flag<["-"], "R">, Flags<[HelpHidden]>, Group<grp_obsolete>,
61  HelpText<"print reference table of shared library">;
62def : Flag<["-"], "S">, Flags<[HelpHidden]>, Group<grp_obsolete>,
63  HelpText<"print table of contents of library">;
64def : Flag<["-"], "T">, Flags<[HelpHidden]>, Group<grp_obsolete>,
65  HelpText<"print table of contents of shared library">;
66def : Flag<["-"], "Q">, Flags<[HelpHidden]>, Group<grp_obsolete>,
67  HelpText<"llvm-otool cannot use otool-classic's disassembler">;
68