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 | "--add-gnu-debuglink=\0" |
26 | "--add-gnu-debuglink\0" |
27 | "--add-section=\0" |
28 | "--add-section\0" |
29 | "--add-symbol=\0" |
30 | "--add-symbol\0" |
31 | "--adjust-section-vma\0" |
32 | "--adjust-start\0" |
33 | "--allow-broken-links\0" |
34 | "--binary-architecture=\0" |
35 | "--binary-architecture\0" |
36 | "-B\0" |
37 | "--change-section-address=\0" |
38 | "--change-section-address\0" |
39 | "--change-section-lma=\0" |
40 | "--change-section-lma\0" |
41 | "--change-start=\0" |
42 | "--change-start\0" |
43 | "--compress-debug-sections=\0" |
44 | "--compress-debug-sections\0" |
45 | "--compress-sections=\0" |
46 | "--compress-sections\0" |
47 | "--decompress-debug-sections\0" |
48 | "--disable-deterministic-archives\0" |
49 | "--discard-all\0" |
50 | "--discard-locals\0" |
51 | "--dump-section=\0" |
52 | "--dump-section\0" |
53 | "-D\0" |
54 | "--enable-deterministic-archives\0" |
55 | "--extract-dwo\0" |
56 | "--extract-main-partition\0" |
57 | "--extract-partition=\0" |
58 | "--extract-partition\0" |
59 | "-F\0" |
60 | "--gap-fill=\0" |
61 | "--gap-fill\0" |
62 | "--globalize-symbol=\0" |
63 | "--globalize-symbols=\0" |
64 | "--globalize-symbols\0" |
65 | "--globalize-symbol\0" |
66 | "-G\0" |
67 | "-g\0" |
68 | "--help\0" |
69 | "-h\0" |
70 | "--input-target=\0" |
71 | "--input-target\0" |
72 | "-I\0" |
73 | "-j\0" |
74 | "--keep-file-symbols\0" |
75 | "--keep-global-symbol=\0" |
76 | "--keep-global-symbols=\0" |
77 | "--keep-global-symbols\0" |
78 | "--keep-global-symbol\0" |
79 | "--keep-section=\0" |
80 | "--keep-section\0" |
81 | "--keep-symbol=\0" |
82 | "--keep-symbols=\0" |
83 | "--keep-symbols\0" |
84 | "--keep-symbol\0" |
85 | "--keep-undefined\0" |
86 | "-K\0" |
87 | "--localize-hidden\0" |
88 | "--localize-symbol=\0" |
89 | "--localize-symbols=\0" |
90 | "--localize-symbols\0" |
91 | "--localize-symbol\0" |
92 | "-L\0" |
93 | "--new-symbol-visibility=\0" |
94 | "--new-symbol-visibility\0" |
95 | "--no-verify-note-sections\0" |
96 | "-N\0" |
97 | "--only-keep-debug\0" |
98 | "--only-section=\0" |
99 | "--only-section\0" |
100 | "--output-target=\0" |
101 | "--output-target\0" |
102 | "-O\0" |
103 | "--pad-to=\0" |
104 | "--pad-to\0" |
105 | "--prefix-alloc-sections=\0" |
106 | "--prefix-alloc-sections\0" |
107 | "--prefix-symbols=\0" |
108 | "--prefix-symbols\0" |
109 | "--preserve-dates\0" |
110 | "-p\0" |
111 | "--redefine-sym=\0" |
112 | "--redefine-syms=\0" |
113 | "--redefine-syms\0" |
114 | "--redefine-sym\0" |
115 | "--regex\0" |
116 | "--remove-note=\0" |
117 | "--remove-note\0" |
118 | "--remove-section=\0" |
119 | "--remove-section\0" |
120 | "--remove-symbol-prefix=\0" |
121 | "--remove-symbol-prefix\0" |
122 | "--rename-section=\0" |
123 | "--rename-section\0" |
124 | "-R\0" |
125 | "--set-section-alignment=\0" |
126 | "--set-section-alignment\0" |
127 | "--set-section-flags=\0" |
128 | "--set-section-flags\0" |
129 | "--set-section-type=\0" |
130 | "--set-section-type\0" |
131 | "--set-start=\0" |
132 | "--set-start\0" |
133 | "--set-symbol-visibility=\0" |
134 | "--set-symbol-visibility\0" |
135 | "--set-symbols-visibility=\0" |
136 | "--set-symbols-visibility\0" |
137 | "--skip-symbol=\0" |
138 | "--skip-symbols=\0" |
139 | "--skip-symbols\0" |
140 | "--skip-symbol\0" |
141 | "--split-dwo=\0" |
142 | "--split-dwo\0" |
143 | "--strip-all-gnu\0" |
144 | "--strip-all\0" |
145 | "--strip-debug\0" |
146 | "--strip-dwo\0" |
147 | "--strip-non-alloc\0" |
148 | "--strip-sections\0" |
149 | "--strip-symbol=\0" |
150 | "--strip-symbols=\0" |
151 | "--strip-symbols\0" |
152 | "--strip-symbol\0" |
153 | "--strip-unneeded-symbol=\0" |
154 | "--strip-unneeded-symbols=\0" |
155 | "--strip-unneeded-symbols\0" |
156 | "--strip-unneeded-symbol\0" |
157 | "--strip-unneeded\0" |
158 | "--subsystem=\0" |
159 | "--subsystem\0" |
160 | "-S\0" |
161 | "--target=\0" |
162 | "--target\0" |
163 | "--update-section=\0" |
164 | "--update-section\0" |
165 | "-U\0" |
166 | "--verify-note-sections\0" |
167 | "--version\0" |
168 | "-V\0" |
169 | "--weaken-symbol=\0" |
170 | "--weaken-symbols=\0" |
171 | "--weaken-symbols\0" |
172 | "--weaken-symbol\0" |
173 | "--weaken\0" |
174 | "--wildcard\0" |
175 | "-W\0" |
176 | "-w\0" |
177 | "-X\0" |
178 | "-x\0" |
179 | ; |
180 | #ifdef __GNUC__ |
181 | #pragma GCC diagnostic pop |
182 | #endif |
183 | |
184 | static constexpr llvm::StringTable OptionStrTable = |
185 | OptionStrTableStorage; |
186 | #endif // OPTTABLE_STR_TABLE_CODE |
187 | |
188 | ///////// |
189 | // Prefixes |
190 | |
191 | #ifdef OPTTABLE_PREFIXES_TABLE_CODE |
192 | static constexpr llvm::StringTable::Offset OptionPrefixesTable[] = { |
193 | 0 /* prefixes */, |
194 | 1 /* prefixes */, 1 /* '-' */, |
195 | 1 /* prefixes */, 3 /* '--' */ |
196 | }; |
197 | #endif // OPTTABLE_PREFIXES_TABLE_CODE |
198 | |
199 | ///////// |
200 | // Prefix Union |
201 | |
202 | #ifdef OPTTABLE_PREFIXES_UNION_CODE |
203 | static constexpr llvm::StringTable::Offset OptionPrefixesUnion[] = { |
204 | 1 /* '-' */, 3 /* '--' */ |
205 | }; |
206 | #endif // OPTTABLE_PREFIXES_UNION_CODE |
207 | |
208 | ///////// |
209 | // ValuesCode |
210 | |
211 | #ifdef OPTTABLE_VALUES_CODE |
212 | #endif |
213 | ///////// |
214 | // Groups |
215 | |
216 | #ifdef OPTION |
217 | OPTION(0 /* no prefixes */, 6 /* kind */, grp_coff, Group, INVALID, INVALID, nullptr, 0, 0, 0, |
218 | "OPTIONS (COFF specific)" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
219 | OPTION(0 /* no prefixes */, 6 /* kind */, grp_macho, Group, INVALID, INVALID, nullptr, 0, 0, 0, |
220 | "OPTIONS (Mach-O specific)" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
221 | |
222 | ////////// |
223 | // Options |
224 | |
225 | 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) |
226 | 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) |
227 | OPTION(3, 29 /* --add-gnu-debuglink= */, add_gnu_debuglink_eq, Joined, INVALID, add_gnu_debuglink, nullptr, 0, DefaultVis, 0, |
228 | "Add a .gnu_debuglink for <debug-file>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "debug-file" , nullptr) |
229 | OPTION(3, 50 /* --add-gnu-debuglink */, add_gnu_debuglink, 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} }}), "debug-file" , nullptr) |
230 | OPTION(3, 70 /* --add-section= */, add_section_eq, Joined, INVALID, add_section, nullptr, 0, DefaultVis, 0, |
231 | "Add a section named <section> with the contents of <file>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section=file" , nullptr) |
232 | OPTION(3, 85 /* --add-section */, add_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=file" , nullptr) |
233 | OPTION(3, 99 /* --add-symbol= */, add_symbol_eq, Joined, INVALID, add_symbol, nullptr, 0, DefaultVis, 0, |
234 | "Add new symbol <name> to .symtab. Accepted flags: global, local, weak, default, hidden, protected, file, section, object, function, indirect-function. Accepted but ignored for compatibility: debug, constructor, warning, indirect, synthetic, unique-object, before" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "name=[section:]value[,flags]" , nullptr) |
235 | OPTION(3, 113 /* --add-symbol */, add_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} }}), "name=[section:]value[,flags]" , nullptr) |
236 | OPTION(3, 126 /* --adjust-section-vma */, adjust_section_vma, JoinedOrSeparate, INVALID, change_section_address, nullptr, 0, DefaultVis, 0, |
237 | "Alias for --change-section-address" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
238 | OPTION(3, 147 /* --adjust-start */, adjust_start, JoinedOrSeparate, INVALID, change_start, nullptr, 0, DefaultVis, 0, |
239 | "Alias for --change-start" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
240 | OPTION(3, 162 /* --allow-broken-links */, allow_broken_links, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
241 | "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) |
242 | OPTION(3, 183 /* --binary-architecture= */, binary_architecture_eq, Joined, INVALID, binary_architecture, nullptr, 0, DefaultVis, 0, |
243 | "Ignored for compatibility" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
244 | OPTION(3, 206 /* --binary-architecture */, binary_architecture, 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} }}), nullptr, nullptr) |
245 | OPTION(1, 228 /* -B */, B, JoinedOrSeparate, INVALID, binary_architecture, nullptr, 0, DefaultVis, 0, |
246 | "Alias for --binary-architecture" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
247 | OPTION(3, 231 /* --change-section-address= */, change_section_address_eq, Joined, INVALID, change_section_address, nullptr, 0, DefaultVis, 0, |
248 | "Set the address of the <section> to, or adjust it by, <val>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "sectionpattern{=|+|-}val" , nullptr) |
249 | OPTION(3, 257 /* --change-section-address */, change_section_address, 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} }}), "sectionpattern{=|+|-}val" , nullptr) |
250 | OPTION(3, 282 /* --change-section-lma= */, change_section_lma_eq, Joined, INVALID, change_section_lma, nullptr, 0, DefaultVis, 0, |
251 | "Shift LMA of non-zero-sized sections in the program header by <val>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "*{+|-}val" , nullptr) |
252 | OPTION(3, 304 /* --change-section-lma */, change_section_lma, 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} }}), "*{+|-}val" , nullptr) |
253 | OPTION(3, 325 /* --change-start= */, change_start_eq, Joined, INVALID, change_start, nullptr, 0, DefaultVis, 0, |
254 | "Add <incr> to the start address. Can be specified multiple times, all values will be applied cumulatively" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "incr" , nullptr) |
255 | OPTION(3, 341 /* --change-start */, change_start, 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} }}), "incr" , nullptr) |
256 | OPTION(3, 356 /* --compress-debug-sections= */, compress_debug_sections, Joined, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
257 | "Compress DWARF debug sections using specified format. Supported formats: zlib, zstd. Select zlib if <format> is omitted" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "format" , nullptr) |
258 | OPTION(3, 383 /* --compress-debug-sections */, anonymous_0, Flag, INVALID, compress_debug_sections, "zlib\0" , 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
259 | OPTION(3, 409 /* --compress-sections= */, compress_sections_eq, Joined, INVALID, compress_sections, nullptr, 0, DefaultVis, 0, |
260 | "Compress or decompress sections using specified format. Supported formats: zlib, zstd. Specify 'none' for decompression" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "<section-glob>=<format>" , nullptr) |
261 | OPTION(3, 430 /* --compress-sections */, compress_sections, 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-glob>=<format>" , nullptr) |
262 | OPTION(3, 450 /* --decompress-debug-sections */, decompress_debug_sections, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
263 | "Decompress DWARF debug sections" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
264 | OPTION(3, 478 /* --disable-deterministic-archives */, disable_deterministic_archives, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
265 | "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) |
266 | OPTION(3, 511 /* --discard-all */, discard_all, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
267 | "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) |
268 | OPTION(3, 525 /* --discard-locals */, discard_locals, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
269 | "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) |
270 | OPTION(3, 542 /* --dump-section= */, dump_section_eq, Joined, INVALID, dump_section, nullptr, 0, DefaultVis, 0, |
271 | "Dump contents of section named <section> into file <file>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section=file" , nullptr) |
272 | OPTION(3, 558 /* --dump-section */, dump_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=file" , nullptr) |
273 | OPTION(1, 573 /* -D */, D, Flag, INVALID, enable_deterministic_archives, nullptr, 0, DefaultVis, 0, |
274 | "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) |
275 | OPTION(3, 576 /* --enable-deterministic-archives */, enable_deterministic_archives, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
276 | "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) |
277 | OPTION(3, 608 /* --extract-dwo */, extract_dwo, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
278 | "Remove all sections that are not DWARF .dwo sections from file" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
279 | OPTION(3, 622 /* --extract-main-partition */, extract_main_partition, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
280 | "Extract main partition from the input file" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
281 | OPTION(3, 647 /* --extract-partition= */, extract_partition_eq, Joined, INVALID, extract_partition, nullptr, 0, DefaultVis, 0, |
282 | "Extract named partition from input file" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "name" , nullptr) |
283 | OPTION(3, 668 /* --extract-partition */, extract_partition, 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} }}), "name" , nullptr) |
284 | OPTION(1, 688 /* -F */, F, JoinedOrSeparate, INVALID, target, nullptr, 0, DefaultVis, 0, |
285 | "Alias for --target" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
286 | OPTION(3, 691 /* --gap-fill= */, gap_fill_eq, Joined, INVALID, gap_fill, nullptr, 0, DefaultVis, 0, |
287 | "Fill the gaps between sections with <value> instead of zero. <value> must be an unsigned 8-bit integer. This option is only supported for ELF input and binary output" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "value" , nullptr) |
288 | OPTION(3, 703 /* --gap-fill */, gap_fill, 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} }}), "value" , nullptr) |
289 | OPTION(3, 714 /* --globalize-symbol= */, globalize_symbol_eq, Joined, INVALID, globalize_symbol, nullptr, 0, DefaultVis, 0, |
290 | "Mark <symbol> as global" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
291 | OPTION(3, 734 /* --globalize-symbols= */, globalize_symbols_eq, Joined, INVALID, globalize_symbols, nullptr, 0, DefaultVis, 0, |
292 | "Read a list of symbols from <filename> and mark defined symbols with those names as global" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
293 | OPTION(3, 755 /* --globalize-symbols */, globalize_symbols, 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} }}), "filename" , nullptr) |
294 | OPTION(3, 775 /* --globalize-symbol */, globalize_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) |
295 | OPTION(1, 794 /* -G */, G, JoinedOrSeparate, INVALID, keep_global_symbol, nullptr, 0, DefaultVis, 0, |
296 | "Alias for --keep-global-symbol" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
297 | OPTION(1, 797 /* -g */, g, Flag, INVALID, strip_debug, nullptr, 0, DefaultVis, 0, |
298 | "Alias for --strip-debug" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
299 | OPTION(3, 800 /* --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) |
300 | OPTION(1, 807 /* -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) |
301 | OPTION(3, 810 /* --input-target= */, input_target_eq, Joined, INVALID, input_target, nullptr, 0, DefaultVis, 0, |
302 | "Read the input as the specified format" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "format" , nullptr) |
303 | OPTION(3, 826 /* --input-target */, input_target, 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} }}), "format" , nullptr) |
304 | OPTION(1, 841 /* -I */, I, JoinedOrSeparate, INVALID, input_target, nullptr, 0, DefaultVis, 0, |
305 | "Alias for --input-target" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
306 | OPTION(1, 844 /* -j */, j, JoinedOrSeparate, INVALID, only_section, nullptr, 0, DefaultVis, 0, |
307 | "Alias for --only-section" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
308 | OPTION(3, 847 /* --keep-file-symbols */, keep_file_symbols, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
309 | "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) |
310 | OPTION(3, 867 /* --keep-global-symbol= */, keep_global_symbol_eq, Joined, INVALID, keep_global_symbol, nullptr, 0, DefaultVis, 0, |
311 | "Mark all symbols local, except for symbols with the name <symbol>. Can be specified multiple times to ignore multiple symbols" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
312 | OPTION(3, 889 /* --keep-global-symbols= */, keep_global_symbols_eq, Joined, INVALID, keep_global_symbols, nullptr, 0, DefaultVis, 0, |
313 | "Read a list of symbols from <filename> and run as if --keep-global-symbol=<symbol> is set for each one. <filename> contains one symbol per line and may contain comments beginning with '#'. Leading and trailing whitespace is stripped from each line. May be repeated to read symbols from many files" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
314 | OPTION(3, 912 /* --keep-global-symbols */, keep_global_symbols, 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} }}), "filename" , nullptr) |
315 | OPTION(3, 934 /* --keep-global-symbol */, keep_global_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) |
316 | OPTION(3, 955 /* --keep-section= */, keep_section_eq, Joined, INVALID, keep_section, nullptr, 0, DefaultVis, 0, |
317 | "Keep <section>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section" , nullptr) |
318 | OPTION(3, 971 /* --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) |
319 | OPTION(3, 986 /* --keep-symbol= */, keep_symbol_eq, Joined, INVALID, keep_symbol, nullptr, 0, DefaultVis, 0, |
320 | "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) |
321 | OPTION(3, 1001 /* --keep-symbols= */, keep_symbols_eq, Joined, INVALID, keep_symbols, nullptr, 0, DefaultVis, 0, |
322 | "Read a list of symbols from <filename> and run as if --keep-symbol=<symbol> is set for each one. <filename> contains one symbol per line and may contain comments beginning with '#'. Leading and trailing whitespace is stripped from each line. May be repeated to read symbols from many files" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
323 | OPTION(3, 1017 /* --keep-symbols */, keep_symbols, 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} }}), "filename" , nullptr) |
324 | OPTION(3, 1032 /* --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) |
325 | OPTION(3, 1046 /* --keep-undefined */, keep_undefined, Flag, grp_macho, INVALID, nullptr, 0, DefaultVis, 0, |
326 | "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) |
327 | OPTION(1, 1063 /* -K */, K, JoinedOrSeparate, INVALID, keep_symbol, nullptr, 0, DefaultVis, 0, |
328 | "Alias for --keep-symbol" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
329 | OPTION(3, 1066 /* --localize-hidden */, localize_hidden, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
330 | "Mark all symbols that have hidden or internal visibility as local" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
331 | OPTION(3, 1084 /* --localize-symbol= */, localize_symbol_eq, Joined, INVALID, localize_symbol, nullptr, 0, DefaultVis, 0, |
332 | "Mark any defined non-common symbol named <symbol> as local" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
333 | OPTION(3, 1103 /* --localize-symbols= */, localize_symbols_eq, Joined, INVALID, localize_symbols, nullptr, 0, DefaultVis, 0, |
334 | "Read a list of names from <filename> and mark any defined non-common symbols with those names as local" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
335 | OPTION(3, 1123 /* --localize-symbols */, localize_symbols, 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} }}), "filename" , nullptr) |
336 | OPTION(3, 1142 /* --localize-symbol */, localize_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) |
337 | OPTION(1, 1160 /* -L */, L, JoinedOrSeparate, INVALID, localize_symbol, nullptr, 0, DefaultVis, 0, |
338 | "Alias for --localize-symbol" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
339 | OPTION(3, 1163 /* --new-symbol-visibility= */, new_symbol_visibility_eq, Joined, INVALID, new_symbol_visibility, nullptr, 0, DefaultVis, 0, |
340 | "Specify the visibility of symbols automatically created when using binary input or --add-symbol. The default is 'default'" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
341 | OPTION(3, 1188 /* --new-symbol-visibility */, new_symbol_visibility, 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} }}), nullptr, nullptr) |
342 | OPTION(3, 1212 /* --no-verify-note-sections */, no_verify_note_sections, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
343 | "Don't validate note sections" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
344 | OPTION(1, 1238 /* -N */, N, JoinedOrSeparate, INVALID, strip_symbol, nullptr, 0, DefaultVis, 0, |
345 | "Alias for --strip-symbol" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
346 | OPTION(3, 1241 /* --only-keep-debug */, only_keep_debug, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
347 | "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) |
348 | OPTION(3, 1259 /* --only-section= */, only_section_eq, Joined, INVALID, only_section, nullptr, 0, DefaultVis, 0, |
349 | "Remove all but <section>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section" , nullptr) |
350 | OPTION(3, 1275 /* --only-section */, only_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) |
351 | OPTION(3, 1290 /* --output-target= */, output_target_eq, Joined, INVALID, output_target, nullptr, 0, DefaultVis, 0, |
352 | "Write the output as the specified format" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "format" , nullptr) |
353 | OPTION(3, 1307 /* --output-target */, output_target, 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} }}), "format" , nullptr) |
354 | OPTION(1, 1323 /* -O */, O, JoinedOrSeparate, INVALID, output_target, nullptr, 0, DefaultVis, 0, |
355 | "Alias for --output-target" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
356 | OPTION(3, 1326 /* --pad-to= */, pad_to_eq, Joined, INVALID, pad_to, nullptr, 0, DefaultVis, 0, |
357 | "Pad the output up to the load address <address>, using a value of zero or the value specified by the --gap-fill option. This option is only supported for ELF input and binary output" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "address" , nullptr) |
358 | OPTION(3, 1336 /* --pad-to */, pad_to, 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} }}), "address" , nullptr) |
359 | OPTION(3, 1345 /* --prefix-alloc-sections= */, prefix_alloc_sections_eq, Joined, INVALID, prefix_alloc_sections, nullptr, 0, DefaultVis, 0, |
360 | "Add <prefix> to the start of every allocated section name" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "prefix" , nullptr) |
361 | OPTION(3, 1370 /* --prefix-alloc-sections */, prefix_alloc_sections, 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} }}), "prefix" , nullptr) |
362 | OPTION(3, 1394 /* --prefix-symbols= */, prefix_symbols_eq, Joined, INVALID, prefix_symbols, nullptr, 0, DefaultVis, 0, |
363 | "Add <prefix> to the start of every symbol name" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "prefix" , nullptr) |
364 | OPTION(3, 1412 /* --prefix-symbols */, prefix_symbols, 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} }}), "prefix" , nullptr) |
365 | OPTION(3, 1429 /* --preserve-dates */, preserve_dates, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
366 | "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) |
367 | OPTION(1, 1446 /* -p */, p, Flag, INVALID, preserve_dates, nullptr, 0, DefaultVis, 0, |
368 | "Alias for --preserve-dates" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
369 | OPTION(3, 1449 /* --redefine-sym= */, redefine_symbol_eq, Joined, INVALID, redefine_symbol, nullptr, 0, DefaultVis, 0, |
370 | "Change the name of a symbol old to new" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "old=new" , nullptr) |
371 | OPTION(3, 1465 /* --redefine-syms= */, redefine_symbols_eq, Joined, INVALID, redefine_symbols, nullptr, 0, DefaultVis, 0, |
372 | "Read a list of symbol pairs from <filename> and run as if --redefine-sym=<old>=<new> is set for each one. <filename> contains two symbols per line separated with whitespace and may contain comments beginning with '#'. Leading and trailing whitespace is stripped from each line. May be repeated to read symbols from many files" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
373 | OPTION(3, 1482 /* --redefine-syms */, redefine_symbols, 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} }}), "filename" , nullptr) |
374 | OPTION(3, 1498 /* --redefine-sym */, redefine_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} }}), "old=new" , nullptr) |
375 | OPTION(3, 1513 /* --regex */, regex, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
376 | "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) |
377 | OPTION(3, 1521 /* --remove-note= */, remove_note_eq, Joined, INVALID, remove_note, nullptr, 0, DefaultVis, 0, |
378 | "Remove note(s) with <type_id> and optional <name>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "[name/]type_id" , nullptr) |
379 | OPTION(3, 1536 /* --remove-note */, remove_note, 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} }}), "[name/]type_id" , nullptr) |
380 | OPTION(3, 1550 /* --remove-section= */, remove_section_eq, Joined, INVALID, remove_section, nullptr, 0, DefaultVis, 0, |
381 | "Remove <section>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section" , nullptr) |
382 | OPTION(3, 1568 /* --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) |
383 | OPTION(3, 1585 /* --remove-symbol-prefix= */, remove_symbol_prefix_eq, Joined, INVALID, remove_symbol_prefix, nullptr, 0, DefaultVis, 0, |
384 | "Remove <prefix> from the start of every symbol name. No-op for symbols that do not start with <prefix>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "prefix" , nullptr) |
385 | OPTION(3, 1609 /* --remove-symbol-prefix */, remove_symbol_prefix, 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} }}), "prefix" , nullptr) |
386 | OPTION(3, 1632 /* --rename-section= */, rename_section_eq, Joined, INVALID, rename_section, nullptr, 0, DefaultVis, 0, |
387 | "Rename sections called <old> to <new>, and apply any specified <flag> values. See --set-section-flags for a list of supported flags" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "old=new[,flag1,...]" , nullptr) |
388 | OPTION(3, 1650 /* --rename-section */, rename_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} }}), "old=new[,flag1,...]" , nullptr) |
389 | OPTION(1, 1667 /* -R */, R, JoinedOrSeparate, INVALID, remove_section, nullptr, 0, DefaultVis, 0, |
390 | "Alias for --remove-section" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
391 | OPTION(3, 1670 /* --set-section-alignment= */, set_section_alignment_eq, Joined, INVALID, set_section_alignment, nullptr, 0, DefaultVis, 0, |
392 | "Set alignment for a given section" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section=align" , nullptr) |
393 | OPTION(3, 1695 /* --set-section-alignment */, set_section_alignment, 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=align" , nullptr) |
394 | OPTION(3, 1719 /* --set-section-flags= */, set_section_flags_eq, Joined, INVALID, set_section_flags, nullptr, 0, DefaultVis, 0, |
395 | "Set section properties based on the specified <flags>. Supported flag names are: alloc, load, noload, readonly, exclude, debug, code, data, rom, share, contents, merge, strings, large" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section=flag1[,flag2,...]" , nullptr) |
396 | OPTION(3, 1740 /* --set-section-flags */, set_section_flags, 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=flag1[,flag2,...]" , nullptr) |
397 | OPTION(3, 1760 /* --set-section-type= */, set_section_type_eq, Joined, INVALID, set_section_type, nullptr, 0, DefaultVis, 0, |
398 | "Set the type of section <section> to the integer <type>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "section=type" , nullptr) |
399 | OPTION(3, 1780 /* --set-section-type */, set_section_type, 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=type" , nullptr) |
400 | OPTION(3, 1799 /* --set-start= */, set_start_eq, Joined, INVALID, set_start, nullptr, 0, DefaultVis, 0, |
401 | "Set the start address to <addr>. Overrides any previous --change-start or --adjust-start values" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "addr" , nullptr) |
402 | OPTION(3, 1812 /* --set-start */, set_start, 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} }}), "addr" , nullptr) |
403 | OPTION(3, 1824 /* --set-symbol-visibility= */, set_symbol_visibility_eq, Joined, INVALID, set_symbol_visibility, nullptr, 0, DefaultVis, 0, |
404 | "Change the visibility of a symbol to the specified value" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol=visibility" , nullptr) |
405 | OPTION(3, 1849 /* --set-symbol-visibility */, set_symbol_visibility, 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=visibility" , nullptr) |
406 | OPTION(3, 1873 /* --set-symbols-visibility= */, set_symbols_visibility_eq, Joined, INVALID, set_symbols_visibility, nullptr, 0, DefaultVis, 0, |
407 | "Read a list of symbols from <filename> and change their visibility to the specified value. Visibility values: default, internal, hidden, protected" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename=visibility" , nullptr) |
408 | OPTION(3, 1899 /* --set-symbols-visibility */, set_symbols_visibility, 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} }}), "filename=visibility" , nullptr) |
409 | OPTION(3, 1924 /* --skip-symbol= */, skip_symbol_eq, Joined, INVALID, skip_symbol, nullptr, 0, DefaultVis, 0, |
410 | "Do not change parameters of symbol <symbol> when executing other options that can change the symbol's name, binding or visibility" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
411 | OPTION(3, 1939 /* --skip-symbols= */, skip_symbols_eq, Joined, INVALID, skip_symbols, nullptr, 0, DefaultVis, 0, |
412 | "Read a list of symbols from <filename> and run as if --skip-symbol=<symbol> is set for each one. <filename> contains one symbol per line and may contain comments beginning with '#'. Leading and trailing whitespace is stripped from each line. May be repeated to read symbols from many files" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
413 | OPTION(3, 1955 /* --skip-symbols */, skip_symbols, 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} }}), "filename" , nullptr) |
414 | OPTION(3, 1970 /* --skip-symbol */, skip_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) |
415 | OPTION(3, 1984 /* --split-dwo= */, split_dwo_eq, Joined, INVALID, split_dwo, nullptr, 0, DefaultVis, 0, |
416 | "Equivalent to --extract-dwo and <dwo-file> as the output file and no other options, and then --strip-dwo on the input file" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "dwo-file" , nullptr) |
417 | OPTION(3, 1997 /* --split-dwo */, split_dwo, 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} }}), "dwo-file" , nullptr) |
418 | OPTION(3, 2009 /* --strip-all-gnu */, strip_all_gnu, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
419 | "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) |
420 | OPTION(3, 2025 /* --strip-all */, strip_all, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
421 | "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) |
422 | OPTION(3, 2037 /* --strip-debug */, strip_debug, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
423 | "Remove all debug sections" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
424 | OPTION(3, 2051 /* --strip-dwo */, strip_dwo, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
425 | "Remove all DWARF .dwo sections" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
426 | OPTION(3, 2063 /* --strip-non-alloc */, strip_non_alloc, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
427 | "Remove all non-allocated sections that are not within segments" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
428 | OPTION(3, 2081 /* --strip-sections */, strip_sections, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
429 | "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) |
430 | OPTION(3, 2098 /* --strip-symbol= */, strip_symbol_eq, Joined, INVALID, strip_symbol, nullptr, 0, DefaultVis, 0, |
431 | "Strip <symbol>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
432 | OPTION(3, 2114 /* --strip-symbols= */, strip_symbols_eq, Joined, INVALID, strip_symbols, nullptr, 0, DefaultVis, 0, |
433 | "Remove all symbols whose names appear in the file <filename>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
434 | OPTION(3, 2131 /* --strip-symbols */, strip_symbols, 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} }}), "filename" , nullptr) |
435 | OPTION(3, 2147 /* --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) |
436 | OPTION(3, 2162 /* --strip-unneeded-symbol= */, strip_unneeded_symbol_eq, Joined, INVALID, strip_unneeded_symbol, nullptr, 0, DefaultVis, 0, |
437 | "Remove all symbols named <symbol> that are local or undefined and are not required by any relocation" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
438 | OPTION(3, 2187 /* --strip-unneeded-symbols= */, strip_unneeded_symbols_eq, Joined, INVALID, strip_unneeded_symbols, nullptr, 0, DefaultVis, 0, |
439 | "Remove all symbols whose names appear in the file <file>, if they are local or undefined and are not required by any relocation" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
440 | OPTION(3, 2213 /* --strip-unneeded-symbols */, strip_unneeded_symbols, 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} }}), "filename" , nullptr) |
441 | OPTION(3, 2238 /* --strip-unneeded-symbol */, strip_unneeded_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) |
442 | OPTION(3, 2262 /* --strip-unneeded */, strip_unneeded, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
443 | "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) |
444 | OPTION(3, 2279 /* --subsystem= */, subsystem_eq, Joined, grp_coff, subsystem, nullptr, 0, DefaultVis, 0, |
445 | "Set the PE subsystem, and optionally subsystem version" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "name[:version]" , nullptr) |
446 | OPTION(3, 2292 /* --subsystem */, subsystem, Separate, grp_coff, INVALID, nullptr, 0, DefaultVis, 0, nullptr, (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "name[:version]" , nullptr) |
447 | OPTION(1, 2304 /* -S */, S, Flag, INVALID, strip_all, nullptr, 0, DefaultVis, 0, |
448 | "Alias for --strip-all" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
449 | OPTION(3, 2307 /* --target= */, target_eq, Joined, INVALID, target, nullptr, 0, DefaultVis, 0, |
450 | "Equivalent to --input-target and --output-target for the specified format" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, "binary" ) |
451 | OPTION(3, 2317 /* --target */, target, 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} }}), nullptr, "binary" ) |
452 | OPTION(3, 2326 /* --update-section= */, update_section_eq, Joined, INVALID, update_section, nullptr, 0, DefaultVis, 0, |
453 | "Replace the contents of section <name> with contents from a file <file>" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "name=file" , nullptr) |
454 | OPTION(3, 2344 /* --update-section */, update_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} }}), "name=file" , nullptr) |
455 | OPTION(1, 2361 /* -U */, U, Flag, INVALID, disable_deterministic_archives, nullptr, 0, DefaultVis, 0, |
456 | "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) |
457 | OPTION(3, 2364 /* --verify-note-sections */, verify_note_sections, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
458 | "Validate note sections" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
459 | OPTION(3, 2387 /* --version */, version, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
460 | "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) |
461 | OPTION(1, 2397 /* -V */, V, Flag, INVALID, version, nullptr, 0, DefaultVis, 0, |
462 | "Alias for --version" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
463 | OPTION(3, 2400 /* --weaken-symbol= */, weaken_symbol_eq, Joined, INVALID, weaken_symbol, nullptr, 0, DefaultVis, 0, |
464 | "Mark global symbols named <symbol> as weak" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "symbol" , nullptr) |
465 | OPTION(3, 2417 /* --weaken-symbols= */, weaken_symbols_eq, Joined, INVALID, weaken_symbols, nullptr, 0, DefaultVis, 0, |
466 | "Read a list of symbols from <filename> and mark global symbols with those names as weak" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), "filename" , nullptr) |
467 | OPTION(3, 2435 /* --weaken-symbols */, weaken_symbols, 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} }}), "filename" , nullptr) |
468 | OPTION(3, 2452 /* --weaken-symbol */, weaken_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) |
469 | OPTION(3, 2468 /* --weaken */, weaken, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
470 | "Mark all defined global symbols as weak" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
471 | OPTION(3, 2477 /* --wildcard */, wildcard, Flag, INVALID, INVALID, nullptr, 0, DefaultVis, 0, |
472 | "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) |
473 | OPTION(1, 2488 /* -W */, W, JoinedOrSeparate, INVALID, weaken_symbol, nullptr, 0, DefaultVis, 0, |
474 | "Alias for --weaken-symbol" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
475 | OPTION(1, 2491 /* -w */, w, Flag, INVALID, wildcard, nullptr, 0, DefaultVis, 0, |
476 | "Alias for --wildcard" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
477 | OPTION(1, 2494 /* -X */, X, Flag, INVALID, discard_locals, nullptr, 0, DefaultVis, 0, |
478 | "Alias for --discard-locals" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
479 | OPTION(1, 2497 /* -x */, x, Flag, INVALID, discard_all, nullptr, 0, DefaultVis, 0, |
480 | "Alias for --discard-all" , (std::array<std::pair<std::array<unsigned, 2>, const char*>, 1>{{ {std::array<unsigned, 2>{{0, 0}}, nullptr} }}), nullptr, nullptr) |
481 | #endif // OPTION |
482 | |
483 | #ifdef SIMPLE_ENUM_VALUE_TABLE |
484 | |
485 | struct SimpleEnumValue { |
486 | const char *Name; |
487 | unsigned Value; |
488 | }; |
489 | |
490 | struct SimpleEnumValueTable { |
491 | const SimpleEnumValue *Table; |
492 | unsigned Size; |
493 | }; |
494 | static const SimpleEnumValueTable SimpleEnumValueTables[] = {}; |
495 | static const unsigned SimpleEnumValueTablesSize = std::size(SimpleEnumValueTables); |
496 | #endif // SIMPLE_ENUM_VALUE_TABLE |
497 | |
498 | |
499 | |