1 | /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
2 | |* *| |
3 | |* Option Parsing Definitions *| |
4 | |* *| |
5 | |* Automatically generated file, do not edit! *| |
6 | |* *| |
7 | \*===----------------------------------------------------------------------===*/ |
8 | |
9 | ///////// |
10 | // String table |
11 | |
12 | #ifdef OPTTABLE_STR_TABLE_CODE |
13 | |
14 | #ifdef __GNUC__ |
15 | #pragma GCC diagnostic push |
16 | #pragma GCC diagnostic ignored "-Woverlength-strings" |
17 | #endif |
18 | static constexpr char OptionStrTableStorage[] = |
19 | "\0" |
20 | "-\0" |
21 | "--\0" |
22 | "kind\0" |
23 | "<input>\0" |
24 | "<unknown>\0" |
25 | "--allow-broken-links\0" |
26 | "--disable-deterministic-archives\0" |
27 | "--discard-all\0" |
28 | "--discard-locals\0" |
29 | "-D\0" |
30 | "-d\0" |
31 | "--enable-deterministic-archives\0" |
32 | "-g\0" |
33 | "--help\0" |
34 | "-h\0" |
35 | "--keep-file-symbols\0" |
36 | "--keep-section=\0" |
37 | "--keep-section\0" |
38 | "--keep-symbol=\0" |
39 | "--keep-symbol\0" |
40 | "--keep-undefined\0" |
41 | "-K\0" |
42 | "--no-strip-all\0" |
43 | "-N\0" |
44 | "--only-keep-debug\0" |
45 | "-o\0" |
46 | "--preserve-dates\0" |
47 | "-p\0" |
48 | "--regex\0" |
49 | "--remove-section=\0" |
50 | "--remove-section\0" |
51 | "-R\0" |
52 | "--strip-all-gnu\0" |
53 | "--strip-all\0" |
54 | "--strip-debug\0" |
55 | "--strip-sections\0" |
56 | "--strip-symbol=\0" |
57 | "--strip-symbol\0" |
58 | "--strip-unneeded\0" |
59 | "-S\0" |
60 | "-s\0" |
61 | "-T\0" |
62 | "-U\0" |
63 | "--version\0" |
64 | "-V\0" |
65 | "--wildcard\0" |
66 | "-w\0" |
67 | "-X\0" |
68 | "-x\0" |
69 | ; |
70 | #ifdef __GNUC__ |
71 | #pragma GCC diagnostic pop |
72 | #endif |
73 | |
74 | static constexpr llvm::StringTable OptionStrTable = |
75 | OptionStrTableStorage; |
76 | #endif // OPTTABLE_STR_TABLE_CODE |
77 | |
78 | ///////// |
79 | // Prefixes |
80 | |
81 | #ifdef OPTTABLE_PREFIXES_TABLE_CODE |
82 | static constexpr llvm::StringTable::Offset OptionPrefixesTable[] = { |
83 | 0 /* prefixes */, |
84 | 1 /* prefixes */, 1 /* '-' */, |
85 | 1 /* prefixes */, 3 /* '--' */ |
86 | }; |
87 | #endif // OPTTABLE_PREFIXES_TABLE_CODE |
88 | |
89 | ///////// |
90 | // Prefix Union |
91 | |
92 | #ifdef OPTTABLE_PREFIXES_UNION_CODE |
93 | static constexpr llvm::StringTable::Offset OptionPrefixesUnion[] = { |
94 | 1 /* '-' */, 3 /* '--' */ |
95 | }; |
96 | #endif // OPTTABLE_PREFIXES_UNION_CODE |
97 | |
98 | ///////// |
99 | // ValuesCode |
100 | |
101 | #ifdef OPTTABLE_VALUES_CODE |
102 | #endif |
103 | ///////// |
104 | // Groups |
105 | |
106 | #ifdef OPTION |
107 | OPTION(0 /* no prefixes */, 6 /* kind */, grp_coff, Group, INVALID, INVALID, nullptr, 0, 0, 0, |
108 | "OPTIONS (COFF specific)" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
109 | OPTION(0 /* no prefixes */, 6 /* kind */, grp_macho, Group, INVALID, INVALID, nullptr, 0, 0, 0, |
110 | "OPTIONS (Mach-O specific)" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
111 | |
112 | ////////// |
113 | // Options |
114 | |
115 | OPTION(0, 11 /* <input> */, INPUT, Input, INVALID, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
116 | OPTION(0, 19 /* <unknown> */, UNKNOWN, Unknown, INVALID, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
117 | OPTION(3, 29 /* --allow-broken-links */, allow_broken_links, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
118 | "Allow the tool to remove sections even if it would leave invalid section references. The appropriate sh_link fields will be set to zero." , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
119 | OPTION(3, 50 /* --disable-deterministic-archives */, disable_deterministic_archives, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
120 | "Disable deterministic mode when operating on archives (use real values for UIDs, GIDs, and timestamps)." , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
121 | OPTION(3, 83 /* --discard-all */, discard_all, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
122 | "Remove most local symbols. Different file formats may limit this to a subset. For ELF, file and section symbols are not discarded. Additionally, remove all debug sections" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
123 | OPTION(3, 97 /* --discard-locals */, discard_locals, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
124 | "Remove local symbols starting with .L" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
125 | OPTION(1, 114 /* -D */, D, Flag, INVALID, enable_deterministic_archives, nullptr, 0, DefaultVis, 0, |
126 | "Alias for --enable-deterministic-archives" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
127 | OPTION(1, 117 /* -d */, d, Flag, INVALID, strip_debug, nullptr, 0, DefaultVis, 0, |
128 | "Alias for --strip-debug" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
129 | OPTION(3, 120 /* --enable-deterministic-archives */, enable_deterministic_archives, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
130 | "Enable deterministic mode when operating on archives (use zero for UIDs, GIDs, and timestamps)." , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
131 | OPTION(1, 152 /* -g */, g, Flag, INVALID, strip_debug, nullptr, 0, DefaultVis, 0, |
132 | "Alias for --strip-debug" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
133 | OPTION(3, 155 /* --help */, help, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
134 | OPTION(1, 162 /* -h */, h, Flag, INVALID, help, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
135 | OPTION(3, 165 /* --keep-file-symbols */, keep_file_symbols, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
136 | "Keep symbols of type STT_FILE, even if they would otherwise be stripped" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
137 | OPTION(3, 185 /* --keep-section= */, keep_section_eq, Joined, INVALID, keep_section, nullptr, 0, DefaultVis, 0, |
138 | "Keep <section>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section" , nullptr) |
139 | OPTION(3, 201 /* --keep-section */, keep_section, Separate, INVALID, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section" , nullptr) |
140 | OPTION(3, 216 /* --keep-symbol= */, keep_symbol_eq, Joined, INVALID, keep_symbol, nullptr, 0, DefaultVis, 0, |
141 | "When removing symbols, do not remove <symbol>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
142 | OPTION(3, 231 /* --keep-symbol */, keep_symbol, Separate, INVALID, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
143 | OPTION(3, 245 /* --keep-undefined */, keep_undefined, Flag, grp_macho, INVALID, nullptr, 0, DefaultVis, 0, |
144 | "Do not remove undefined symbols" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
145 | OPTION(1, 262 /* -K */, K, JoinedOrSeparate, INVALID, keep_symbol, nullptr, 0, DefaultVis, 0, |
146 | "Alias for --keep-symbol" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
147 | OPTION(3, 265 /* --no-strip-all */, no_strip_all, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
148 | "Disable --strip-all" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
149 | OPTION(1, 280 /* -N */, N, JoinedOrSeparate, INVALID, strip_symbol, nullptr, 0, DefaultVis, 0, |
150 | "Alias for --strip-symbol" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
151 | OPTION(3, 283 /* --only-keep-debug */, only_keep_debug, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
152 | "Produce a debug file as the output that only preserves contents of sections useful for debugging purposes" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
153 | OPTION(1, 301 /* -o */, output, JoinedOrSeparate, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
154 | "Write output to <file>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "<file>" , nullptr) |
155 | OPTION(3, 304 /* --preserve-dates */, preserve_dates, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
156 | "Preserve access and modification timestamps" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
157 | OPTION(1, 321 /* -p */, p, Flag, INVALID, preserve_dates, nullptr, 0, DefaultVis, 0, |
158 | "Alias for --preserve-dates" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
159 | OPTION(3, 324 /* --regex */, regex, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
160 | "Permit regular expressions in name comparison" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
161 | OPTION(3, 332 /* --remove-section= */, remove_section_eq, Joined, INVALID, remove_section, nullptr, 0, DefaultVis, 0, |
162 | "Remove <section>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section" , nullptr) |
163 | OPTION(3, 350 /* --remove-section */, remove_section, Separate, INVALID, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section" , nullptr) |
164 | OPTION(1, 367 /* -R */, R, JoinedOrSeparate, INVALID, remove_section, nullptr, 0, DefaultVis, 0, |
165 | "Alias for --remove-section" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
166 | OPTION(3, 370 /* --strip-all-gnu */, strip_all_gnu, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
167 | "Remove all symbols, debug sections and relocations. Compatible with GNU's --strip-all" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
168 | OPTION(3, 386 /* --strip-all */, strip_all, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
169 | "For ELF, remove all symbols and non-alloc sections not within segments, except for .gnu.warning*, .ARM.attribute, and the section name table. For COFF and Mach-O, remove all symbols, debug sections, and relocations" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
170 | OPTION(3, 398 /* --strip-debug */, strip_debug, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
171 | "Remove all debug sections" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
172 | OPTION(3, 412 /* --strip-sections */, strip_sections, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
173 | "Remove all section headers and all section data not within segments" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
174 | OPTION(3, 429 /* --strip-symbol= */, strip_symbol_eq, Joined, INVALID, strip_symbol, nullptr, 0, DefaultVis, 0, |
175 | "Strip <symbol>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
176 | OPTION(3, 445 /* --strip-symbol */, strip_symbol, Separate, INVALID, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
177 | OPTION(3, 460 /* --strip-unneeded */, strip_unneeded, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
178 | "Remove all symbols not needed by relocations" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
179 | OPTION(1, 477 /* -S */, S, Flag, INVALID, strip_debug, nullptr, 0, DefaultVis, 0, |
180 | "Alias for --strip-debug" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
181 | OPTION(1, 480 /* -s */, s, Flag, INVALID, strip_all, nullptr, 0, DefaultVis, 0, |
182 | "Alias for --strip-all" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
183 | OPTION(1, 483 /* -T */, strip_swift_symbols, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
184 | "Remove Swift symbols" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
185 | OPTION(1, 486 /* -U */, U, Flag, INVALID, disable_deterministic_archives, nullptr, 0, DefaultVis, 0, |
186 | "Alias for --disable-deterministic-archives" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
187 | OPTION(3, 489 /* --version */, version, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
188 | "Print the version and exit." , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
189 | OPTION(1, 499 /* -V */, V, Flag, INVALID, version, nullptr, 0, DefaultVis, 0, |
190 | "Alias for --version" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
191 | OPTION(3, 502 /* --wildcard */, wildcard, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
192 | "Allow wildcard syntax for symbol-related flags. Incompatible with --regex. Allows using '*' to match any number of characters, '?' to match any single character, '' to escape special characters, and '[]' to define character classes. Wildcards beginning with '!' will prevent a match, for example \"-N '*' -N '!x'\" will strip all symbols except for \"x\"." , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
193 | OPTION(1, 513 /* -w */, w, Flag, INVALID, wildcard, nullptr, 0, DefaultVis, 0, |
194 | "Alias for --wildcard" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
195 | OPTION(1, 516 /* -X */, X, Flag, INVALID, discard_locals, nullptr, 0, DefaultVis, 0, |
196 | "Alias for --discard-locals" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
197 | OPTION(1, 519 /* -x */, x, Flag, INVALID, discard_all, nullptr, 0, DefaultVis, 0, |
198 | "Alias for --discard-all" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
199 | #endif // OPTION |
200 | |
201 | #ifdef SIMPLE_ENUM_VALUE_TABLE |
202 | |
203 | struct SimpleEnumValue { |
204 | const char *Name; |
205 | unsigned Value; |
206 | }; |
207 | |
208 | struct SimpleEnumValueTable { |
209 | const SimpleEnumValue *Table; |
210 | unsigned Size; |
211 | }; |
212 | static const SimpleEnumValueTable SimpleEnumValueTables[] = {}; |
213 | static const unsigned SimpleEnumValueTablesSize = std::size(SimpleEnumValueTables); |
214 | #endif // SIMPLE_ENUM_VALUE_TABLE |
215 | |
216 | |
217 | |