| 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 | |