1 /** 2 * D header file for GNU/Linux 3 * 4 * $(LINK2 http://sourceware.org/git/?p=glibc.git;a=blob;f=elf/elf.h, glibc elf/elf.h) 5 */ 6 module sys.linux.elf; 7 8 version (linux): 9 extern (C): 10 // pure: 11 // nothrow: 12 13 import core.stdc.stdint; 14 15 alias Elf32_Half = uint16_t; 16 alias Elf64_Half = uint16_t; 17 18 alias Elf32_Word = uint32_t; 19 alias Elf32_Sword = int32_t; 20 alias Elf64_Word = uint32_t; 21 alias Elf64_Sword = int32_t; 22 23 alias Elf32_Xword = uint64_t; 24 alias Elf32_Sxword = int64_t; 25 alias Elf64_Xword = uint64_t; 26 alias Elf64_Sxword = int64_t; 27 28 alias Elf32_Addr = uint32_t; 29 alias Elf64_Addr = uint64_t; 30 31 alias Elf32_Off = uint32_t; 32 alias Elf64_Off = uint64_t; 33 34 alias Elf32_Section = uint16_t; 35 alias Elf64_Section = uint16_t; 36 37 alias Elf32_Versym = Elf32_Half; 38 alias Elf64_Versym = Elf64_Half; 39 40 enum EI_NIDENT = 16; 41 42 struct Elf32_Ehdr { 43 char[EI_NIDENT] e_ident; 44 Elf32_Half e_type; 45 Elf32_Half e_machine; 46 Elf32_Word e_version; 47 Elf32_Addr e_entry; 48 Elf32_Off e_phoff; 49 Elf32_Off e_shoff; 50 Elf32_Word e_flags; 51 Elf32_Half e_ehsize; 52 Elf32_Half e_phentsize; 53 Elf32_Half e_phnum; 54 Elf32_Half e_shentsize; 55 Elf32_Half e_shnum; 56 Elf32_Half e_shstrndx; 57 } 58 59 struct Elf64_Ehdr { 60 char[EI_NIDENT] e_ident; 61 Elf64_Half e_type; 62 Elf64_Half e_machine; 63 Elf64_Word e_version; 64 Elf64_Addr e_entry; 65 Elf64_Off e_phoff; 66 Elf64_Off e_shoff; 67 Elf64_Word e_flags; 68 Elf64_Half e_ehsize; 69 Elf64_Half e_phentsize; 70 Elf64_Half e_phnum; 71 Elf64_Half e_shentsize; 72 Elf64_Half e_shnum; 73 Elf64_Half e_shstrndx; 74 } 75 76 enum EI_MAG0 = 0; 77 enum ELFMAG0 = 0x7f; 78 79 enum EI_MAG1 = 1; 80 enum ELFMAG1 = 'E'; 81 82 enum EI_MAG2 = 2; 83 enum ELFMAG2 = 'L'; 84 85 enum EI_MAG3 = 3; 86 enum ELFMAG3 = 'F'; 87 // enum ELFMAG = "\177ELF"; 88 enum SELFMAG = 4; 89 90 enum EI_CLASS = 4; 91 enum ELFCLASSNONE = 0; 92 enum ELFCLASS32 = 1; 93 enum ELFCLASS64 = 2; 94 enum ELFCLASSNUM = 3; 95 96 enum EI_DATA = 5; 97 enum ELFDATANONE = 0; 98 enum ELFDATA2LSB = 1; 99 enum ELFDATA2MSB = 2; 100 enum ELFDATANUM = 3; 101 102 enum EI_VERSION = 6; 103 104 enum EI_OSABI = 7; 105 enum ELFOSABI_NONE = 0; 106 enum ELFOSABI_SYSV = 0; 107 enum ELFOSABI_HPUX = 1; 108 enum ELFOSABI_NETBSD = 2; 109 enum ELFOSABI_GNU = 3; 110 enum ELFOSABI_LINUX = ELFOSABI_GNU; 111 enum ELFOSABI_SOLARIS = 6; 112 enum ELFOSABI_AIX = 7; 113 enum ELFOSABI_IRIX = 8; 114 enum ELFOSABI_FREEBSD = 9; 115 enum ELFOSABI_TRU64 = 10; 116 enum ELFOSABI_MODESTO = 11; 117 enum ELFOSABI_OPENBSD = 12; 118 enum ELFOSABI_ARM_AEABI = 64; 119 enum ELFOSABI_ARM = 97; 120 enum ELFOSABI_STANDALONE = 255; 121 122 enum EI_ABIVERSION = 8; 123 124 enum EI_PAD = 9; 125 126 enum ET_NONE = 0; 127 enum ET_REL = 1; 128 enum ET_EXEC = 2; 129 enum ET_DYN = 3; 130 enum ET_CORE = 4; 131 enum ET_NUM = 5; 132 enum ET_LOOS = 0xfe00; 133 enum ET_HIOS = 0xfeff; 134 enum ET_LOPROC = 0xff00; 135 enum ET_HIPROC = 0xffff; 136 137 enum EM_NONE = 0; 138 enum EM_M32 = 1; 139 enum EM_SPARC = 2; 140 enum EM_386 = 3; 141 enum EM_68K = 4; 142 enum EM_88K = 5; 143 enum EM_860 = 7; 144 enum EM_MIPS = 8; 145 enum EM_S370 = 9; 146 enum EM_MIPS_RS3_LE = 10; 147 148 enum EM_PARISC = 15; 149 enum EM_VPP500 = 17; 150 enum EM_SPARC32PLUS = 18; 151 enum EM_960 = 19; 152 enum EM_PPC = 20; 153 enum EM_PPC64 = 21; 154 enum EM_S390 = 22; 155 156 enum EM_V800 = 36; 157 enum EM_FR20 = 37; 158 enum EM_RH32 = 38; 159 enum EM_RCE = 39; 160 enum EM_ARM = 40; 161 enum EM_FAKE_ALPHA = 41; 162 enum EM_SH = 42; 163 enum EM_SPARCV9 = 43; 164 enum EM_TRICORE = 44; 165 enum EM_ARC = 45; 166 enum EM_H8_300 = 46; 167 enum EM_H8_300H = 47; 168 enum EM_H8S = 48; 169 enum EM_H8_500 = 49; 170 enum EM_IA_64 = 50; 171 enum EM_MIPS_X = 51; 172 enum EM_COLDFIRE = 52; 173 enum EM_68HC12 = 53; 174 enum EM_MMA = 54; 175 enum EM_PCP = 55; 176 enum EM_NCPU = 56; 177 enum EM_NDR1 = 57; 178 enum EM_STARCORE = 58; 179 enum EM_ME16 = 59; 180 enum EM_ST100 = 60; 181 enum EM_TINYJ = 61; 182 enum EM_X86_64 = 62; 183 enum EM_PDSP = 63; 184 185 enum EM_FX66 = 66; 186 enum EM_ST9PLUS = 67; 187 enum EM_ST7 = 68; 188 enum EM_68HC16 = 69; 189 enum EM_68HC11 = 70; 190 enum EM_68HC08 = 71; 191 enum EM_68HC05 = 72; 192 enum EM_SVX = 73; 193 enum EM_ST19 = 74; 194 enum EM_VAX = 75; 195 enum EM_CRIS = 76; 196 enum EM_JAVELIN = 77; 197 enum EM_FIREPATH = 78; 198 enum EM_ZSP = 79; 199 enum EM_MMIX = 80; 200 enum EM_HUANY = 81; 201 enum EM_PRISM = 82; 202 enum EM_AVR = 83; 203 enum EM_FR30 = 84; 204 enum EM_D10V = 85; 205 enum EM_D30V = 86; 206 enum EM_V850 = 87; 207 enum EM_M32R = 88; 208 enum EM_MN10300 = 89; 209 enum EM_MN10200 = 90; 210 enum EM_PJ = 91; 211 enum EM_OPENRISC = 92; 212 enum EM_ARC_A5 = 93; 213 enum EM_XTENSA = 94; 214 enum EM_AARCH64 = 183; 215 enum EM_TILEPRO = 188; 216 enum EM_TILEGX = 191; 217 enum EM_NUM = 192; 218 219 enum EM_ALPHA = 0x9026; 220 221 enum EV_NONE = 0; 222 enum EV_CURRENT = 1; 223 enum EV_NUM = 2; 224 225 struct Elf32_Shdr { 226 Elf32_Word sh_name; 227 Elf32_Word sh_type; 228 Elf32_Word sh_flags; 229 Elf32_Addr sh_addr; 230 Elf32_Off sh_offset; 231 Elf32_Word sh_size; 232 Elf32_Word sh_link; 233 Elf32_Word sh_info; 234 Elf32_Word sh_addralign; 235 Elf32_Word sh_entsize; 236 } 237 238 struct Elf64_Shdr { 239 Elf64_Word sh_name; 240 Elf64_Word sh_type; 241 Elf64_Xword sh_flags; 242 Elf64_Addr sh_addr; 243 Elf64_Off sh_offset; 244 Elf64_Xword sh_size; 245 Elf64_Word sh_link; 246 Elf64_Word sh_info; 247 Elf64_Xword sh_addralign; 248 Elf64_Xword sh_entsize; 249 } 250 251 enum SHN_UNDEF = 0; 252 enum SHN_LORESERVE = 0xff00; 253 enum SHN_LOPROC = 0xff00; 254 enum SHN_BEFORE = 0xff00; 255 enum SHN_AFTER = 0xff01; 256 enum SHN_HIPROC = 0xff1f; 257 enum SHN_LOOS = 0xff20; 258 enum SHN_HIOS = 0xff3f; 259 enum SHN_ABS = 0xfff1; 260 enum SHN_COMMON = 0xfff2; 261 enum SHN_XINDEX = 0xffff; 262 enum SHN_HIRESERVE = 0xffff; 263 264 enum SHT_NULL = 0; 265 enum SHT_PROGBITS = 1; 266 enum SHT_SYMTAB = 2; 267 enum SHT_STRTAB = 3; 268 enum SHT_RELA = 4; 269 enum SHT_HASH = 5; 270 enum SHT_DYNAMIC = 6; 271 enum SHT_NOTE = 7; 272 enum SHT_NOBITS = 8; 273 enum SHT_REL = 9; 274 enum SHT_SHLIB = 10; 275 enum SHT_DYNSYM = 11; 276 enum SHT_INIT_ARRAY = 14; 277 enum SHT_FINI_ARRAY = 15; 278 enum SHT_PREINIT_ARRAY = 16; 279 enum SHT_GROUP = 17; 280 enum SHT_SYMTAB_SHNDX = 18; 281 enum SHT_NUM = 19; 282 enum SHT_LOOS = 0x60000000; 283 enum SHT_GNU_ATTRIBUTES = 0x6ffffff5; 284 enum SHT_GNU_HASH = 0x6ffffff6; 285 enum SHT_GNU_LIBLIST = 0x6ffffff7; 286 enum SHT_CHECKSUM = 0x6ffffff8; 287 enum SHT_LOSUNW = 0x6ffffffa; 288 enum SHT_SUNW_move = 0x6ffffffa; 289 enum SHT_SUNW_COMDAT = 0x6ffffffb; 290 enum SHT_SUNW_syminfo = 0x6ffffffc; 291 enum SHT_GNU_verdef = 0x6ffffffd; 292 enum SHT_GNU_verneed = 0x6ffffffe; 293 enum SHT_GNU_versym = 0x6fffffff; 294 enum SHT_HISUNW = 0x6fffffff; 295 enum SHT_HIOS = 0x6fffffff; 296 enum SHT_LOPROC = 0x70000000; 297 enum SHT_HIPROC = 0x7fffffff; 298 enum SHT_LOUSER = 0x80000000; 299 enum SHT_HIUSER = 0x8fffffff; 300 301 enum SHF_WRITE = (1 << 0); 302 enum SHF_ALLOC = (1 << 1); 303 enum SHF_EXECINSTR = (1 << 2); 304 enum SHF_MERGE = (1 << 4); 305 enum SHF_STRINGS = (1 << 5); 306 enum SHF_INFO_LINK = (1 << 6); 307 enum SHF_LINK_ORDER = (1 << 7); 308 enum SHF_OS_NONCONFORMING = (1 << 8); 309 enum SHF_GROUP = (1 << 9); 310 enum SHF_TLS = (1 << 10); 311 enum SHF_MASKOS = 0x0ff00000; 312 enum SHF_MASKPROC = 0xf0000000; 313 enum SHF_ORDERED = (1 << 30); 314 enum SHF_EXCLUDE = (1 << 31); 315 enum GRP_COMDAT = 0x1; 316 317 struct Elf32_Sym { 318 Elf32_Word st_name; 319 Elf32_Addr st_value; 320 Elf32_Word st_size; 321 ubyte st_info; 322 ubyte st_other; 323 Elf32_Section st_shndx; 324 } 325 326 struct Elf64_Sym { 327 Elf64_Word st_name; 328 ubyte st_info; 329 ubyte st_other; 330 Elf64_Section st_shndx; 331 Elf64_Addr st_value; 332 Elf64_Xword st_size; 333 } 334 335 struct Elf32_Syminfo { 336 Elf32_Half si_boundto; 337 Elf32_Half si_flags; 338 } 339 340 struct Elf64_Syminfo { 341 Elf64_Half si_boundto; 342 Elf64_Half si_flags; 343 } 344 345 enum SYMINFO_BT_SELF = 0xffff; 346 enum SYMINFO_BT_PARENT = 0xfffe; 347 enum SYMINFO_BT_LOWRESERVE = 0xff00; 348 enum SYMINFO_FLG_DIRECT = 0x0001; 349 enum SYMINFO_FLG_PASSTHRU = 0x0002; 350 enum SYMINFO_FLG_COPY = 0x0004; 351 enum SYMINFO_FLG_LAZYLOAD = 0x0008; 352 enum SYMINFO_NONE = 0; 353 enum SYMINFO_CURRENT = 1; 354 enum SYMINFO_NUM = 2; 355 356 extern(D) { 357 auto ELF32_ST_BIND(T)(T val) { return cast(ubyte)val >> 4; } 358 auto ELF32_ST_TYPE(T)(T val) { return val & 0xf; } 359 auto ELF32_ST_INFO(B, T)(B bind, T type) { return (bind << 4) + (type & 0xf); } 360 361 alias ELF64_ST_BIND = ELF32_ST_BIND; 362 alias ELF64_ST_TYPE = ELF32_ST_TYPE; 363 alias ELF64_ST_INFO = ELF32_ST_INFO; 364 } 365 366 enum STB_LOCAL = 0; 367 enum STB_GLOBAL = 1; 368 enum STB_WEAK = 2; 369 enum STB_NUM = 3; 370 enum STB_LOOS = 10; 371 enum STB_GNU_UNIQUE = 10; 372 enum STB_HIOS = 12; 373 enum STB_LOPROC = 13; 374 enum STB_HIPROC = 15; 375 376 enum STT_NOTYPE = 0; 377 enum STT_OBJECT = 1; 378 enum STT_FUNC = 2; 379 enum STT_SECTION = 3; 380 enum STT_FILE = 4; 381 enum STT_COMMON = 5; 382 enum STT_TLS = 6; 383 enum STT_NUM = 7; 384 enum STT_LOOS = 10; 385 enum STT_GNU_IFUNC = 10; 386 enum STT_HIOS = 12; 387 enum STT_LOPROC = 13; 388 enum STT_HIPROC = 15; 389 390 enum STN_UNDEF = 0; 391 392 extern(D) { 393 auto ELF32_ST_VISIBILITY(O)(O o) { return o & 0x03; } 394 alias ELF64_ST_VISIBILITY = ELF32_ST_VISIBILITY; 395 } 396 397 enum STV_DEFAULT = 0; 398 enum STV_INTERNAL = 1; 399 enum STV_HIDDEN = 2; 400 enum STV_PROTECTED = 3; 401 402 struct Elf32_Rel { 403 Elf32_Addr r_offset; 404 Elf32_Word r_info; 405 } 406 407 struct Elf64_Rel { 408 Elf64_Addr r_offset; 409 Elf64_Xword r_info; 410 } 411 412 struct Elf32_Rela { 413 Elf32_Addr r_offset; 414 Elf32_Word r_info; 415 Elf32_Sword r_addend; 416 } 417 418 struct Elf64_Rela { 419 Elf64_Addr r_offset; 420 Elf64_Xword r_info; 421 Elf64_Sxword r_addend; 422 } 423 424 extern(D) { 425 auto ELF32_R_SYM(V)(V val) { return val >> 8; } 426 auto ELF32_R_TYPE(V)(V val) { return val & 0xff; } 427 auto ELF32_R_INFO(S, T)(S sym, T type) { return (sym << 8) + (type & 0xff); } 428 429 auto ELF64_R_SYM(I)(I i) { return i >> 32; } 430 auto ELF64_R_TYPE(I)(I i) { return i & 0xffffffff; } 431 auto ELF64_R_INFO(S, T)(S sym, T type) { return (sym << 32) + (type); } 432 } 433 434 struct Elf32_Phdr { 435 Elf32_Word p_type; 436 Elf32_Off p_offset; 437 Elf32_Addr p_vaddr; 438 Elf32_Addr p_paddr; 439 Elf32_Word p_filesz; 440 Elf32_Word p_memsz; 441 Elf32_Word p_flags; 442 Elf32_Word p_align; 443 } 444 445 struct Elf64_Phdr { 446 Elf64_Word p_type; 447 Elf64_Word p_flags; 448 Elf64_Off p_offset; 449 Elf64_Addr p_vaddr; 450 Elf64_Addr p_paddr; 451 Elf64_Xword p_filesz; 452 Elf64_Xword p_memsz; 453 Elf64_Xword p_align; 454 } 455 456 enum PN_XNUM = 0xffff; 457 458 enum PT_NULL = 0; 459 enum PT_LOAD = 1; 460 enum PT_DYNAMIC = 2; 461 enum PT_INTERP = 3; 462 enum PT_NOTE = 4; 463 enum PT_SHLIB = 5; 464 enum PT_PHDR = 6; 465 enum PT_TLS = 7; 466 enum PT_NUM = 8; 467 enum PT_LOOS = 0x60000000; 468 enum PT_GNU_EH_FRAME = 0x6474e550; 469 enum PT_GNU_STACK = 0x6474e551; 470 enum PT_GNU_RELRO = 0x6474e552; 471 enum PT_LOSUNW = 0x6ffffffa; 472 enum PT_SUNWBSS = 0x6ffffffa; 473 enum PT_SUNWSTACK = 0x6ffffffb; 474 enum PT_HISUNW = 0x6fffffff; 475 enum PT_HIOS = 0x6fffffff; 476 enum PT_LOPROC = 0x70000000; 477 enum PT_HIPROC = 0x7fffffff; 478 479 enum PF_X = (1 << 0); 480 enum PF_W = (1 << 1); 481 enum PF_R = (1 << 2); 482 enum PF_MASKOS = 0x0ff00000; 483 enum PF_MASKPROC = 0xf0000000; 484 485 enum NT_PRSTATUS = 1; 486 enum NT_FPREGSET = 2; 487 enum NT_PRPSINFO = 3; 488 enum NT_PRXREG = 4; 489 enum NT_TASKSTRUCT = 4; 490 enum NT_PLATFORM = 5; 491 enum NT_AUXV = 6; 492 enum NT_GWINDOWS = 7; 493 enum NT_ASRS = 8; 494 enum NT_PSTATUS = 10; 495 enum NT_PSINFO = 13; 496 enum NT_PRCRED = 14; 497 enum NT_UTSNAME = 15; 498 enum NT_LWPSTATUS = 16; 499 enum NT_LWPSINFO = 17; 500 enum NT_PRFPXREG = 20; 501 enum NT_SIGINFO = 0x53494749; 502 enum NT_FILE = 0x46494c45; 503 enum NT_PRXFPREG = 0x46e62b7f; 504 enum NT_PPC_VMX = 0x100; 505 enum NT_PPC_SPE = 0x101; 506 enum NT_PPC_VSX = 0x102; 507 enum NT_386_TLS = 0x200; 508 enum NT_386_IOPERM = 0x201; 509 enum NT_X86_XSTATE = 0x202; 510 enum NT_S390_HIGH_GPRS = 0x300; 511 enum NT_S390_TIMER = 0x301; 512 enum NT_S390_TODCMP = 0x302; 513 enum NT_S390_TODPREG = 0x303; 514 enum NT_S390_CTRS = 0x304; 515 enum NT_S390_PREFIX = 0x305; 516 enum NT_S390_LAST_BREAK = 0x306; 517 enum NT_S390_SYSTEM_CALL = 0x307; 518 enum NT_S390_TDB = 0x308; 519 enum NT_ARM_VFP = 0x400; 520 enum NT_ARM_TLS = 0x401; 521 enum NT_ARM_HW_BREAK = 0x402; 522 enum NT_ARM_HW_WATCH = 0x403; 523 524 enum NT_VERSION = 1; 525 526 struct Elf32_Dyn { 527 Elf32_Sword d_tag; 528 union _d_un { 529 Elf32_Word d_val; 530 Elf32_Addr d_ptr; 531 } _d_un d_un; 532 } 533 534 struct Elf64_Dyn { 535 Elf64_Sxword d_tag; 536 union _d_un { 537 Elf64_Xword d_val; 538 Elf64_Addr d_ptr; 539 } _d_un d_un; 540 } 541 542 enum DT_NULL = 0; 543 enum DT_NEEDED = 1; 544 enum DT_PLTRELSZ = 2; 545 enum DT_PLTGOT = 3; 546 enum DT_HASH = 4; 547 enum DT_STRTAB = 5; 548 enum DT_SYMTAB = 6; 549 enum DT_RELA = 7; 550 enum DT_RELASZ = 8; 551 enum DT_RELAENT = 9; 552 enum DT_STRSZ = 10; 553 enum DT_SYMENT = 11; 554 enum DT_INIT = 12; 555 enum DT_FINI = 13; 556 enum DT_SONAME = 14; 557 enum DT_RPATH = 15; 558 enum DT_SYMBOLIC = 16; 559 enum DT_REL = 17; 560 enum DT_RELSZ = 18; 561 enum DT_RELENT = 19; 562 enum DT_PLTREL = 20; 563 enum DT_DEBUG = 21; 564 enum DT_TEXTREL = 22; 565 enum DT_JMPREL = 23; 566 enum DT_BIND_NOW = 24; 567 enum DT_INIT_ARRAY = 25; 568 enum DT_FINI_ARRAY = 26; 569 enum DT_INIT_ARRAYSZ = 27; 570 enum DT_FINI_ARRAYSZ = 28; 571 enum DT_RUNPATH = 29; 572 enum DT_FLAGS = 30; 573 enum DT_ENCODING = 32; 574 enum DT_PREINIT_ARRAY = 32; 575 enum DT_PREINIT_ARRAYSZ = 33; 576 enum DT_NUM = 34; 577 enum DT_LOOS = 0x6000000d; 578 enum DT_HIOS = 0x6ffff000; 579 enum DT_LOPROC = 0x70000000; 580 enum DT_HIPROC = 0x7fffffff; 581 enum DT_PROCNUM = DT_MIPS_NUM; 582 enum DT_VALRNGLO = 0x6ffffd00; 583 enum DT_GNU_PRELINKED = 0x6ffffdf5; 584 enum DT_GNU_CONFLICTSZ = 0x6ffffdf6; 585 enum DT_GNU_LIBLISTSZ = 0x6ffffdf7; 586 enum DT_CHECKSUM = 0x6ffffdf8; 587 enum DT_PLTPADSZ = 0x6ffffdf9; 588 enum DT_MOVEENT = 0x6ffffdfa; 589 enum DT_MOVESZ = 0x6ffffdfb; 590 enum DT_FEATURE_1 = 0x6ffffdfc; 591 enum DT_POSFLAG_1 = 0x6ffffdfd; 592 enum DT_SYMINSZ = 0x6ffffdfe; 593 enum DT_SYMINENT = 0x6ffffdff; 594 enum DT_VALRNGHI = 0x6ffffdff; 595 596 extern(D) auto DT_VALTAGIDX(T)(T tag) { 597 return DT_VALRNGHI - tag; 598 } 599 600 enum DT_VALNUM = 12; 601 enum DT_ADDRRNGLO = 0x6ffffe00; 602 enum DT_GNU_HASH = 0x6ffffef5; 603 enum DT_TLSDESC_PLT = 0x6ffffef6; 604 enum DT_TLSDESC_GOT = 0x6ffffef7; 605 enum DT_GNU_CONFLICT = 0x6ffffef8; 606 enum DT_GNU_LIBLIST = 0x6ffffef9; 607 enum DT_CONFIG = 0x6ffffefa; 608 enum DT_DEPAUDIT = 0x6ffffefb; 609 enum DT_AUDIT = 0x6ffffefc; 610 enum DT_PLTPAD = 0x6ffffefd; 611 enum DT_MOVETAB = 0x6ffffefe; 612 enum DT_SYMINFO = 0x6ffffeff; 613 enum DT_ADDRRNGHI = 0x6ffffeff; 614 615 extern(D) auto DT_ADDRTAGIDX(T)(T tag) { 616 return DT_ADDRRNGHI - tag; 617 } 618 619 enum DT_ADDRNUM = 11; 620 enum DT_VERSYM = 0x6ffffff0; 621 622 enum DT_RELACOUNT = 0x6ffffff9; 623 enum DT_RELCOUNT = 0x6ffffffa; 624 enum DT_FLAGS_1 = 0x6ffffffb; 625 enum DT_VERDEF = 0x6ffffffc; 626 enum DT_VERDEFNUM = 0x6ffffffd; 627 enum DT_VERNEED = 0x6ffffffe; 628 enum DT_VERNEEDNUM = 0x6fffffff; 629 630 extern(D) auto DT_VERSIONTAGIDX(T)(T tag) { 631 return DT_VERNEEDNUM - tag; 632 } 633 634 enum DT_VERSIONTAGNUM = 16; 635 enum DT_AUXILIARY = 0x7ffffffd; 636 enum DT_FILTER = 0x7fffffff; 637 638 extern(D) auto DT_EXTRATAGIDX(T)(T tag) { 639 return cast(Elf32_Word)(-(cast(Elf32_Sword)(tag) <<1>>1)-1); 640 } 641 642 enum DT_EXTRANUM = 3; 643 enum DF_ORIGIN = 0x00000001; 644 enum DF_SYMBOLIC = 0x00000002; 645 enum DF_TEXTREL = 0x00000004; 646 enum DF_BIND_NOW = 0x00000008; 647 enum DF_STATIC_TLS = 0x00000010; 648 enum DF_1_NOW = 0x00000001; 649 enum DF_1_GLOBAL = 0x00000002; 650 enum DF_1_GROUP = 0x00000004; 651 enum DF_1_NODELETE = 0x00000008; 652 enum DF_1_LOADFLTR = 0x00000010; 653 enum DF_1_INITFIRST = 0x00000020; 654 enum DF_1_NOOPEN = 0x00000040; 655 enum DF_1_ORIGIN = 0x00000080; 656 enum DF_1_DIRECT = 0x00000100; 657 enum DF_1_TRANS = 0x00000200; 658 enum DF_1_INTERPOSE = 0x00000400; 659 enum DF_1_NODEFLIB = 0x00000800; 660 enum DF_1_NODUMP = 0x00001000; 661 enum DF_1_CONFALT = 0x00002000; 662 enum DF_1_ENDFILTEE = 0x00004000; 663 enum DF_1_DISPRELDNE = 0x00008000; 664 enum DF_1_DISPRELPND = 0x00010000; 665 enum DF_1_NODIRECT = 0x00020000; 666 enum DF_1_IGNMULDEF = 0x00040000; 667 enum DF_1_NOKSYMS = 0x00080000; 668 enum DF_1_NOHDR = 0x00100000; 669 enum DF_1_EDITED = 0x00200000; 670 enum DF_1_NORELOC = 0x00400000; 671 enum DF_1_SYMINTPOSE = 0x00800000; 672 enum DF_1_GLOBAUDIT = 0x01000000; 673 enum DF_1_SINGLETON = 0x02000000; 674 enum DTF_1_PARINIT = 0x00000001; 675 enum DTF_1_CONFEXP = 0x00000002; 676 enum DF_P1_LAZYLOAD = 0x00000001; 677 enum DF_P1_GROUPPERM = 0x00000002; 678 679 struct Elf32_Verdef { 680 Elf32_Half vd_version; 681 Elf32_Half vd_flags; 682 Elf32_Half vd_ndx; 683 Elf32_Half vd_cnt; 684 Elf32_Word vd_hash; 685 Elf32_Word vd_aux; 686 Elf32_Word vd_next; 687 } 688 689 struct Elf64_Verdef { 690 Elf64_Half vd_version; 691 Elf64_Half vd_flags; 692 Elf64_Half vd_ndx; 693 Elf64_Half vd_cnt; 694 Elf64_Word vd_hash; 695 Elf64_Word vd_aux; 696 Elf64_Word vd_next; 697 } 698 699 enum VER_DEF_NONE = 0; 700 enum VER_DEF_CURRENT = 1; 701 enum VER_DEF_NUM = 2; 702 enum VER_FLG_BASE = 0x1; 703 enum VER_FLG_WEAK = 0x2; 704 enum VER_NDX_LOCAL = 0; 705 enum VER_NDX_GLOBAL = 1; 706 enum VER_NDX_LORESERVE = 0xff00; 707 enum VER_NDX_ELIMINATE = 0xff01; 708 709 struct Elf32_Verdaux { 710 Elf32_Word vda_name; 711 Elf32_Word vda_next; 712 } 713 714 struct Elf64_Elf32_EhdrVerdaux { 715 Elf64_Word vda_name; 716 Elf64_Word vda_next; 717 } 718 719 struct Elf32_Verneed { 720 Elf32_Half vn_version; 721 Elf32_Half vn_cnt; 722 Elf32_Word vn_file; 723 Elf32_Word vn_aux; 724 Elf32_Word vn_next; 725 } 726 727 struct Elf64_Verneed { 728 Elf64_Half vn_version; 729 Elf64_Half vn_cnt; 730 Elf64_Word vn_file; 731 Elf64_Word vn_aux; 732 Elf64_Word vn_next; 733 } 734 735 enum VER_NEED_NONE = 0; 736 enum VER_NEED_CURRENT = 1; 737 enum VER_NEED_NUM = 2; 738 739 struct Elf32_Vernaux { 740 Elf32_Word vna_hash; 741 Elf32_Half vna_flags; 742 Elf32_Half vna_other; 743 Elf32_Word vna_name; 744 Elf32_Word vna_next; 745 } 746 747 struct Elf64_Vernaux { 748 Elf64_Word vna_hash; 749 Elf64_Half vna_flags; 750 Elf64_Half vna_other; 751 Elf64_Word vna_name; 752 Elf64_Word vna_next; 753 } 754 755 // duplicate 756 // enum VER_FLG_WEAK = 0x2; 757 758 struct Elf32_auxv_t { 759 uint32_t a_type; 760 union _a_un { 761 uint32_t a_val; 762 } _a_un a_un; 763 } 764 765 struct Elf64_auxv_t { 766 uint64_t a_type; 767 union _a_un { 768 uint64_t a_val; 769 } _a_un a_un; 770 } 771 772 enum AT_NULL = 0; 773 enum AT_IGNORE = 1; 774 enum AT_EXECFD = 2; 775 enum AT_PHDR = 3; 776 enum AT_PHENT = 4; 777 enum AT_PHNUM = 5; 778 enum AT_PAGESZ = 6; 779 enum AT_BASE = 7; 780 enum AT_FLAGS = 8; 781 enum AT_ENTRY = 9; 782 enum AT_NOTELF = 10; 783 enum AT_UID = 11; 784 enum AT_EUID = 12; 785 enum AT_GID = 13; 786 enum AT_EGID = 14; 787 enum AT_CLKTCK = 17; 788 enum AT_PLATFORM = 15; 789 enum AT_HWCAP = 16; 790 enum AT_FPUCW = 18; 791 enum AT_DCACHEBSIZE = 19; 792 enum AT_ICACHEBSIZE = 20; 793 enum AT_UCACHEBSIZE = 21; 794 enum AT_IGNOREPPC = 22; 795 796 enum AT_SECURE = 23; 797 798 enum AT_BASE_PLATFORM = 24; 799 800 enum AT_RANDOM = 25; 801 802 enum AT_EXECFN = 31; 803 enum AT_SYSINFO = 32; 804 enum AT_SYSINFO_EHDR = 33; 805 806 enum AT_L1I_CACHESHAPE = 34; 807 enum AT_L1D_CACHESHAPE = 35; 808 enum AT_L2_CACHESHAPE = 36; 809 enum AT_L3_CACHESHAPE = 37; 810 811 struct Elf32_Nhdr { 812 Elf32_Word n_namesz; 813 Elf32_Word n_descsz; 814 Elf32_Word n_type; 815 } 816 817 struct Elf64_Nhdr { 818 Elf64_Word n_namesz; 819 Elf64_Word n_descsz; 820 Elf64_Word n_type; 821 } 822 823 // enum ELF_NOTE_SOLARIS = "SUNW Solaris"; 824 // enum ELF_NOTE_GNU = "GNU"; 825 enum ELF_NOTE_PAGESIZE_HINT = 1; 826 enum NT_GNU_ABI_TAG = 1; 827 enum ELF_NOTE_ABI = NT_GNU_ABI_TAG; 828 enum ELF_NOTE_OS_LINUX = 0; 829 enum ELF_NOTE_OS_GNU = 1; 830 enum ELF_NOTE_OS_SOLARIS2 = 2; 831 enum ELF_NOTE_OS_FREEBSD = 3; 832 enum NT_GNU_HWCAP = 2; 833 enum NT_GNU_BUILD_ID = 3; 834 enum NT_GNU_GOLD_VERSION = 4; 835 836 struct Elf32_Move { 837 Elf32_Xword m_value; 838 Elf32_Word m_info; 839 Elf32_Word m_poffset; 840 Elf32_Half m_repeat; 841 Elf32_Half m_stride; 842 } 843 844 struct Elf64_Move { 845 Elf64_Xword m_value; 846 Elf64_Xword m_info; 847 Elf64_Xword m_poffset; 848 Elf64_Half m_repeat; 849 Elf64_Half m_stride; 850 } 851 852 extern(D) { 853 auto ELF32_M_SYM(I)(I info) { return info >> 8; } 854 auto ELF32_M_SIZE(I)(I info) { return cast(ubyte)info; } 855 auto ELF32_M_INFO(S, SZ)(S sym, SZ size) { return (sym << 8) + cast(ubye)size; } 856 } 857 858 alias ELF64_M_SYM = ELF32_M_SYM; 859 alias ELF64_M_SIZE = ELF32_M_SIZE; 860 alias ELF64_M_INFO = ELF32_M_INFO; 861 862 enum EF_CPU32 = 0x00810000; 863 864 enum R_68K_NONE = 0; 865 enum R_68K_32 = 1; 866 enum R_68K_16 = 2; 867 enum R_68K_8 = 3; 868 enum R_68K_PC32 = 4; 869 enum R_68K_PC16 = 5; 870 enum R_68K_PC8 = 6; 871 enum R_68K_GOT32 = 7; 872 enum R_68K_GOT16 = 8; 873 enum R_68K_GOT8 = 9; 874 enum R_68K_GOT32O = 10; 875 enum R_68K_GOT16O = 11; 876 enum R_68K_GOT8O = 12; 877 enum R_68K_PLT32 = 13; 878 enum R_68K_PLT16 = 14; 879 enum R_68K_PLT8 = 15; 880 enum R_68K_PLT32O = 16; 881 enum R_68K_PLT16O = 17; 882 enum R_68K_PLT8O = 18; 883 enum R_68K_COPY = 19; 884 enum R_68K_GLOB_DAT = 20; 885 enum R_68K_JMP_SLOT = 21; 886 enum R_68K_RELATIVE = 22; 887 enum R_68K_TLS_GD32 = 25; 888 enum R_68K_TLS_GD16 = 26; 889 enum R_68K_TLS_GD8 = 27; 890 enum R_68K_TLS_LDM32 = 28; 891 enum R_68K_TLS_LDM16 = 29; 892 enum R_68K_TLS_LDM8 = 30; 893 enum R_68K_TLS_LDO32 = 31; 894 enum R_68K_TLS_LDO16 = 32; 895 enum R_68K_TLS_LDO8 = 33; 896 enum R_68K_TLS_IE32 = 34; 897 enum R_68K_TLS_IE16 = 35; 898 enum R_68K_TLS_IE8 = 36; 899 enum R_68K_TLS_LE32 = 37; 900 enum R_68K_TLS_LE16 = 38; 901 enum R_68K_TLS_LE8 = 39; 902 enum R_68K_TLS_DTPMOD32 = 40; 903 enum R_68K_TLS_DTPREL32 = 41; 904 enum R_68K_TLS_TPREL32 = 42; 905 enum R_68K_NUM = 43; 906 907 enum R_386_NONE = 0; 908 enum R_386_32 = 1; 909 enum R_386_PC32 = 2; 910 enum R_386_GOT32 = 3; 911 enum R_386_PLT32 = 4; 912 enum R_386_COPY = 5; 913 enum R_386_GLOB_DAT = 6; 914 enum R_386_JMP_SLOT = 7; 915 enum R_386_RELATIVE = 8; 916 enum R_386_GOTOFF = 9; 917 enum R_386_GOTPC = 10; 918 enum R_386_32PLT = 11; 919 enum R_386_TLS_TPOFF = 14; 920 enum R_386_TLS_IE = 15; 921 enum R_386_TLS_GOTIE = 16; 922 enum R_386_TLS_LE = 17; 923 enum R_386_TLS_GD = 18; 924 enum R_386_TLS_LDM = 19; 925 enum R_386_16 = 20; 926 enum R_386_PC16 = 21; 927 enum R_386_8 = 22; 928 enum R_386_PC8 = 23; 929 enum R_386_TLS_GD_32 = 24; 930 enum R_386_TLS_GD_PUSH = 25; 931 enum R_386_TLS_GD_CALL = 26; 932 enum R_386_TLS_GD_POP = 27; 933 enum R_386_TLS_LDM_32 = 28; 934 enum R_386_TLS_LDM_PUSH = 29; 935 enum R_386_TLS_LDM_CALL = 30; 936 enum R_386_TLS_LDM_POP = 31; 937 enum R_386_TLS_LDO_32 = 32; 938 enum R_386_TLS_IE_32 = 33; 939 enum R_386_TLS_LE_32 = 34; 940 enum R_386_TLS_DTPMOD32 = 35; 941 enum R_386_TLS_DTPOFF32 = 36; 942 enum R_386_TLS_TPOFF32 = 37; 943 enum R_386_SIZE32 = 38; 944 enum R_386_TLS_GOTDESC = 39; 945 enum R_386_TLS_DESC_CALL = 40; 946 enum R_386_TLS_DESC = 41; 947 enum R_386_IRELATIVE = 42; 948 enum R_386_NUM = 43; 949 950 enum STT_SPARC_REGISTER = 13; 951 952 enum EF_SPARCV9_MM = 3; 953 enum EF_SPARCV9_TSO = 0; 954 enum EF_SPARCV9_PSO = 1; 955 enum EF_SPARCV9_RMO = 2; 956 enum EF_SPARC_LEDATA = 0x800000; 957 enum EF_SPARC_EXT_MASK = 0xFFFF00; 958 enum EF_SPARC_32PLUS = 0x000100; 959 enum EF_SPARC_SUN_US1 = 0x000200; 960 enum EF_SPARC_HAL_R1 = 0x000400; 961 enum EF_SPARC_SUN_US3 = 0x000800; 962 963 enum R_SPARC_NONE = 0; 964 enum R_SPARC_8 = 1; 965 enum R_SPARC_16 = 2; 966 enum R_SPARC_32 = 3; 967 enum R_SPARC_DISP8 = 4; 968 enum R_SPARC_DISP16 = 5; 969 enum R_SPARC_DISP32 = 6; 970 enum R_SPARC_WDISP30 = 7; 971 enum R_SPARC_WDISP22 = 8; 972 enum R_SPARC_HI22 = 9; 973 enum R_SPARC_22 = 10; 974 enum R_SPARC_13 = 11; 975 enum R_SPARC_LO10 = 12; 976 enum R_SPARC_GOT10 = 13; 977 enum R_SPARC_GOT13 = 14; 978 enum R_SPARC_GOT22 = 15; 979 enum R_SPARC_PC10 = 16; 980 enum R_SPARC_PC22 = 17; 981 enum R_SPARC_WPLT30 = 18; 982 enum R_SPARC_COPY = 19; 983 enum R_SPARC_GLOB_DAT = 20; 984 enum R_SPARC_JMP_SLOT = 21; 985 enum R_SPARC_RELATIVE = 22; 986 enum R_SPARC_UA32 = 23; 987 988 enum R_SPARC_PLT32 = 24; 989 enum R_SPARC_HIPLT22 = 25; 990 enum R_SPARC_LOPLT10 = 26; 991 enum R_SPARC_PCPLT32 = 27; 992 enum R_SPARC_PCPLT22 = 28; 993 enum R_SPARC_PCPLT10 = 29; 994 enum R_SPARC_10 = 30; 995 enum R_SPARC_11 = 31; 996 enum R_SPARC_64 = 32; 997 enum R_SPARC_OLO10 = 33; 998 enum R_SPARC_HH22 = 34; 999 enum R_SPARC_HM10 = 35; 1000 enum R_SPARC_LM22 = 36; 1001 enum R_SPARC_PC_HH22 = 37; 1002 enum R_SPARC_PC_HM10 = 38; 1003 enum R_SPARC_PC_LM22 = 39; 1004 enum R_SPARC_WDISP16 = 40; 1005 enum R_SPARC_WDISP19 = 41; 1006 enum R_SPARC_GLOB_JMP = 42; 1007 enum R_SPARC_7 = 43; 1008 enum R_SPARC_5 = 44; 1009 enum R_SPARC_6 = 45; 1010 enum R_SPARC_DISP64 = 46; 1011 enum R_SPARC_PLT64 = 47; 1012 enum R_SPARC_HIX22 = 48; 1013 enum R_SPARC_LOX10 = 49; 1014 enum R_SPARC_H44 = 50; 1015 enum R_SPARC_M44 = 51; 1016 enum R_SPARC_L44 = 52; 1017 enum R_SPARC_REGISTER = 53; 1018 enum R_SPARC_UA64 = 54; 1019 enum R_SPARC_UA16 = 55; 1020 enum R_SPARC_TLS_GD_HI22 = 56; 1021 enum R_SPARC_TLS_GD_LO10 = 57; 1022 enum R_SPARC_TLS_GD_ADD = 58; 1023 enum R_SPARC_TLS_GD_CALL = 59; 1024 enum R_SPARC_TLS_LDM_HI22 = 60; 1025 enum R_SPARC_TLS_LDM_LO10 = 61; 1026 enum R_SPARC_TLS_LDM_ADD = 62; 1027 enum R_SPARC_TLS_LDM_CALL = 63; 1028 enum R_SPARC_TLS_LDO_HIX22 = 64; 1029 enum R_SPARC_TLS_LDO_LOX10 = 65; 1030 enum R_SPARC_TLS_LDO_ADD = 66; 1031 enum R_SPARC_TLS_IE_HI22 = 67; 1032 enum R_SPARC_TLS_IE_LO10 = 68; 1033 enum R_SPARC_TLS_IE_LD = 69; 1034 enum R_SPARC_TLS_IE_LDX = 70; 1035 enum R_SPARC_TLS_IE_ADD = 71; 1036 enum R_SPARC_TLS_LE_HIX22 = 72; 1037 enum R_SPARC_TLS_LE_LOX10 = 73; 1038 enum R_SPARC_TLS_DTPMOD32 = 74; 1039 enum R_SPARC_TLS_DTPMOD64 = 75; 1040 enum R_SPARC_TLS_DTPOFF32 = 76; 1041 enum R_SPARC_TLS_DTPOFF64 = 77; 1042 enum R_SPARC_TLS_TPOFF32 = 78; 1043 enum R_SPARC_TLS_TPOFF64 = 79; 1044 enum R_SPARC_GOTDATA_HIX22 = 80; 1045 enum R_SPARC_GOTDATA_LOX10 = 81; 1046 enum R_SPARC_GOTDATA_OP_HIX22 = 82; 1047 enum R_SPARC_GOTDATA_OP_LOX10 = 83; 1048 enum R_SPARC_GOTDATA_OP = 84; 1049 enum R_SPARC_H34 = 85; 1050 enum R_SPARC_SIZE32 = 86; 1051 enum R_SPARC_SIZE64 = 87; 1052 enum R_SPARC_WDISP10 = 88; 1053 enum R_SPARC_JMP_IREL = 248; 1054 enum R_SPARC_IRELATIVE = 249; 1055 enum R_SPARC_GNU_VTINHERIT = 250; 1056 enum R_SPARC_GNU_VTENTRY = 251; 1057 enum R_SPARC_REV32 = 252; 1058 enum R_SPARC_NUM = 253; 1059 1060 enum DT_SPARC_REGISTER = 0x70000001; 1061 enum DT_SPARC_NUM = 2; 1062 1063 enum EF_MIPS_NOREORDER = 1; 1064 enum EF_MIPS_PIC = 2; 1065 enum EF_MIPS_CPIC = 4; 1066 enum EF_MIPS_XGOT = 8; 1067 enum EF_MIPS_64BIT_WHIRL = 16; 1068 enum EF_MIPS_ABI2 = 32; 1069 enum EF_MIPS_ABI_ON32 = 64; 1070 enum EF_MIPS_ARCH = 0xf0000000; 1071 1072 enum EF_MIPS_ARCH_1 = 0x00000000; 1073 enum EF_MIPS_ARCH_2 = 0x10000000; 1074 enum EF_MIPS_ARCH_3 = 0x20000000; 1075 enum EF_MIPS_ARCH_4 = 0x30000000; 1076 enum EF_MIPS_ARCH_5 = 0x40000000; 1077 enum EF_MIPS_ARCH_32 = 0x50000000; 1078 enum EF_MIPS_ARCH_64 = 0x60000000; 1079 enum EF_MIPS_ARCH_32R2 = 0x70000000; 1080 enum EF_MIPS_ARCH_64R2 = 0x80000000; 1081 1082 enum E_MIPS_ARCH_1 = EF_MIPS_ARCH_1; 1083 enum E_MIPS_ARCH_2 = EF_MIPS_ARCH_2; 1084 enum E_MIPS_ARCH_3 = EF_MIPS_ARCH_3; 1085 enum E_MIPS_ARCH_4 = EF_MIPS_ARCH_4; 1086 enum E_MIPS_ARCH_5 = EF_MIPS_ARCH_5; 1087 enum E_MIPS_ARCH_32 = EF_MIPS_ARCH_32; 1088 enum E_MIPS_ARCH_64 = EF_MIPS_ARCH_64; 1089 1090 enum SHN_MIPS_ACOMMON = 0xff00; 1091 enum SHN_MIPS_TEXT = 0xff01; 1092 enum SHN_MIPS_DATA = 0xff02; 1093 enum SHN_MIPS_SCOMMON = 0xff03; 1094 enum SHN_MIPS_SUNDEFINED = 0xff04; 1095 1096 enum SHT_MIPS_LIBLIST = 0x70000000; 1097 enum SHT_MIPS_MSYM = 0x70000001; 1098 enum SHT_MIPS_CONFLICT = 0x70000002; 1099 enum SHT_MIPS_GPTAB = 0x70000003; 1100 enum SHT_MIPS_UCODE = 0x70000004; 1101 enum SHT_MIPS_DEBUG = 0x70000005; 1102 enum SHT_MIPS_REGINFO = 0x70000006; 1103 enum SHT_MIPS_PACKAGE = 0x70000007; 1104 enum SHT_MIPS_PACKSYM = 0x70000008; 1105 enum SHT_MIPS_RELD = 0x70000009; 1106 enum SHT_MIPS_IFACE = 0x7000000b; 1107 enum SHT_MIPS_CONTENT = 0x7000000c; 1108 enum SHT_MIPS_OPTIONS = 0x7000000d; 1109 enum SHT_MIPS_SHDR = 0x70000010; 1110 enum SHT_MIPS_FDESC = 0x70000011; 1111 enum SHT_MIPS_EXTSYM = 0x70000012; 1112 enum SHT_MIPS_DENSE = 0x70000013; 1113 enum SHT_MIPS_PDESC = 0x70000014; 1114 enum SHT_MIPS_LOCSYM = 0x70000015; 1115 enum SHT_MIPS_AUXSYM = 0x70000016; 1116 enum SHT_MIPS_OPTSYM = 0x70000017; 1117 enum SHT_MIPS_LOCSTR = 0x70000018; 1118 enum SHT_MIPS_LINE = 0x70000019; 1119 enum SHT_MIPS_RFDESC = 0x7000001a; 1120 enum SHT_MIPS_DELTASYM = 0x7000001b; 1121 enum SHT_MIPS_DELTAINST = 0x7000001c; 1122 enum SHT_MIPS_DELTACLASS = 0x7000001d; 1123 enum SHT_MIPS_DWARF = 0x7000001e; 1124 enum SHT_MIPS_DELTADECL = 0x7000001f; 1125 enum SHT_MIPS_SYMBOL_LIB = 0x70000020; 1126 enum SHT_MIPS_EVENTS = 0x70000021; 1127 enum SHT_MIPS_TRANSLATE = 0x70000022; 1128 enum SHT_MIPS_PIXIE = 0x70000023; 1129 enum SHT_MIPS_XLATE = 0x70000024; 1130 enum SHT_MIPS_XLATE_DEBUG = 0x70000025; 1131 enum SHT_MIPS_WHIRL = 0x70000026; 1132 enum SHT_MIPS_EH_REGION = 0x70000027; 1133 enum SHT_MIPS_XLATE_OLD = 0x70000028; 1134 enum SHT_MIPS_PDR_EXCEPTION = 0x70000029; 1135 1136 enum SHF_MIPS_GPREL = 0x10000000; 1137 enum SHF_MIPS_MERGE = 0x20000000; 1138 enum SHF_MIPS_ADDR = 0x40000000; 1139 enum SHF_MIPS_STRINGS = 0x80000000; 1140 enum SHF_MIPS_NOSTRIP = 0x08000000; 1141 enum SHF_MIPS_LOCAL = 0x04000000; 1142 enum SHF_MIPS_NAMES = 0x02000000; 1143 enum SHF_MIPS_NODUPE = 0x01000000; 1144 enum STO_MIPS_DEFAULT = 0x0; 1145 enum STO_MIPS_INTERNAL = 0x1; 1146 enum STO_MIPS_HIDDEN = 0x2; 1147 enum STO_MIPS_PROTECTED = 0x3; 1148 enum STO_MIPS_PLT = 0x8; 1149 enum STO_MIPS_SC_ALIGN_UNUSED = 0xff; 1150 enum STB_MIPS_SPLIT_COMMON = 13; 1151 1152 union Elf32_gptab { 1153 struct _gt_header { 1154 Elf32_Word gt_current_g_value; 1155 Elf32_Word gt_unused; 1156 } _gt_header gt_header; 1157 1158 struct _gt_entry { 1159 Elf32_Word gt_g_value; 1160 Elf32_Word gt_bytes; 1161 } _gt_entry gt_entry; 1162 } 1163 1164 struct Elf32_RegInfo { 1165 Elf32_Word ri_gprmask; 1166 Elf32_Word[4] ri_cprmask; 1167 Elf32_Sword ri_gp_value; 1168 } 1169 1170 struct Elf_Options { 1171 ubyte kind; 1172 ubyte size; 1173 Elf32_Section section; 1174 Elf32_Word info; 1175 } 1176 1177 enum ODK_NULL = 0; 1178 enum ODK_REGINFO = 1; 1179 enum ODK_EXCEPTIONS = 2; 1180 enum ODK_PAD = 3; 1181 enum ODK_HWPATCH = 4; 1182 enum ODK_FILL = 5; 1183 enum ODK_TAGS = 6; 1184 enum ODK_HWAND = 7; 1185 enum ODK_HWOR = 8; 1186 1187 enum OEX_FPU_MIN = 0x1f; 1188 enum OEX_FPU_MAX = 0x1f00; 1189 enum OEX_PAGE0 = 0x10000; 1190 enum OEX_SMM = 0x20000; 1191 enum OEX_FPDBUG = 0x40000; 1192 enum OEX_PRECISEFP = OEX_FPDBUG; 1193 enum OEX_DISMISS = 0x80000; 1194 1195 enum OEX_FPU_INVAL = 0x10; 1196 enum OEX_FPU_DIV0 = 0x08; 1197 enum OEX_FPU_OFLO = 0x04; 1198 enum OEX_FPU_UFLO = 0x02; 1199 enum OEX_FPU_INEX = 0x01; 1200 1201 enum OHW_R4KEOP = 0x1; 1202 enum OHW_R8KPFETCH = 0x2; 1203 enum OHW_R5KEOP = 0x4; 1204 enum OHW_R5KCVTL = 0x8; 1205 1206 enum OPAD_PREFIX = 0x1; 1207 enum OPAD_POSTFIX = 0x2; 1208 enum OPAD_SYMBOL = 0x4; 1209 1210 struct Elf_Options_Hw { 1211 Elf32_Word hwp_flags1; 1212 Elf32_Word hwp_flags2; 1213 } 1214 1215 enum OHWA0_R4KEOP_CHECKED = 0x00000001; 1216 enum OHWA1_R4KEOP_CLEAN = 0x00000002; 1217 1218 enum R_MIPS_NONE = 0; 1219 enum R_MIPS_16 = 1; 1220 enum R_MIPS_32 = 2; 1221 enum R_MIPS_REL32 = 3; 1222 enum R_MIPS_26 = 4; 1223 enum R_MIPS_HI16 = 5; 1224 enum R_MIPS_LO16 = 6; 1225 enum R_MIPS_GPREL16 = 7; 1226 enum R_MIPS_LITERAL = 8; 1227 enum R_MIPS_GOT16 = 9; 1228 enum R_MIPS_PC16 = 10; 1229 enum R_MIPS_CALL16 = 11; 1230 enum R_MIPS_GPREL32 = 12; 1231 1232 enum R_MIPS_SHIFT5 = 16; 1233 enum R_MIPS_SHIFT6 = 17; 1234 enum R_MIPS_64 = 18; 1235 enum R_MIPS_GOT_DISP = 19; 1236 enum R_MIPS_GOT_PAGE = 20; 1237 enum R_MIPS_GOT_OFST = 21; 1238 enum R_MIPS_GOT_HI16 = 22; 1239 enum R_MIPS_GOT_LO16 = 23; 1240 enum R_MIPS_SUB = 24; 1241 enum R_MIPS_INSERT_A = 25; 1242 enum R_MIPS_INSERT_B = 26; 1243 enum R_MIPS_DELETE = 27; 1244 enum R_MIPS_HIGHER = 28; 1245 enum R_MIPS_HIGHEST = 29; 1246 enum R_MIPS_CALL_HI16 = 30; 1247 enum R_MIPS_CALL_LO16 = 31; 1248 enum R_MIPS_SCN_DISP = 32; 1249 enum R_MIPS_REL16 = 33; 1250 enum R_MIPS_ADD_IMMEDIATE = 34; 1251 enum R_MIPS_PJUMP = 35; 1252 enum R_MIPS_RELGOT = 36; 1253 enum R_MIPS_JALR = 37; 1254 enum R_MIPS_TLS_DTPMOD32 = 38; 1255 enum R_MIPS_TLS_DTPREL32 = 39; 1256 enum R_MIPS_TLS_DTPMOD64 = 40; 1257 enum R_MIPS_TLS_DTPREL64 = 41; 1258 enum R_MIPS_TLS_GD = 42; 1259 enum R_MIPS_TLS_LDM = 43; 1260 enum R_MIPS_TLS_DTPREL_HI16 = 44; 1261 enum R_MIPS_TLS_DTPREL_LO16 = 45; 1262 enum R_MIPS_TLS_GOTTPREL = 46; 1263 enum R_MIPS_TLS_TPREL32 = 47; 1264 enum R_MIPS_TLS_TPREL64 = 48; 1265 enum R_MIPS_TLS_TPREL_HI16 = 49; 1266 enum R_MIPS_TLS_TPREL_LO16 = 50; 1267 enum R_MIPS_GLOB_DAT = 51; 1268 enum R_MIPS_COPY = 126; 1269 enum R_MIPS_JUMP_SLOT = 127; 1270 enum R_MIPS_NUM = 128; 1271 1272 enum PT_MIPS_REGINFO = 0x70000000; 1273 enum PT_MIPS_RTPROC = 0x70000001; 1274 enum PT_MIPS_OPTIONS = 0x70000002; 1275 1276 enum PF_MIPS_LOCAL = 0x10000000; 1277 1278 enum DT_MIPS_RLD_VERSION = 0x70000001; 1279 enum DT_MIPS_TIME_STAMP = 0x70000002; 1280 enum DT_MIPS_ICHECKSUM = 0x70000003; 1281 enum DT_MIPS_IVERSION = 0x70000004; 1282 enum DT_MIPS_FLAGS = 0x70000005; 1283 enum DT_MIPS_BASE_ADDRESS = 0x70000006; 1284 enum DT_MIPS_MSYM = 0x70000007; 1285 enum DT_MIPS_CONFLICT = 0x70000008; 1286 enum DT_MIPS_LIBLIST = 0x70000009; 1287 enum DT_MIPS_LOCAL_GOTNO = 0x7000000a; 1288 enum DT_MIPS_CONFLICTNO = 0x7000000b; 1289 enum DT_MIPS_LIBLISTNO = 0x70000010; 1290 enum DT_MIPS_SYMTABNO = 0x70000011; 1291 enum DT_MIPS_UNREFEXTNO = 0x70000012; 1292 enum DT_MIPS_GOTSYM = 0x70000013; 1293 enum DT_MIPS_HIPAGENO = 0x70000014; 1294 enum DT_MIPS_RLD_MAP = 0x70000016; 1295 enum DT_MIPS_DELTA_CLASS = 0x70000017; 1296 enum DT_MIPS_DELTA_CLASS_NO = 0x70000018; 1297 enum DT_MIPS_DELTA_INSTANCE = 0x70000019; 1298 enum DT_MIPS_DELTA_INSTANCE_NO = 0x7000001a; 1299 enum DT_MIPS_DELTA_RELOC = 0x7000001b; 1300 enum DT_MIPS_DELTA_RELOC_NO = 0x7000001c; 1301 enum DT_MIPS_DELTA_SYM = 0x7000001d; 1302 enum DT_MIPS_DELTA_SYM_NO = 0x7000001e; 1303 enum DT_MIPS_DELTA_CLASSSYM = 0x70000020; 1304 enum DT_MIPS_DELTA_CLASSSYM_NO = 0x70000021; 1305 enum DT_MIPS_CXX_FLAGS = 0x70000022; 1306 enum DT_MIPS_PIXIE_INIT = 0x70000023; 1307 enum DT_MIPS_SYMBOL_LIB = 0x70000024; 1308 enum DT_MIPS_LOCALPAGE_GOTIDX = 0x70000025; 1309 enum DT_MIPS_LOCAL_GOTIDX = 0x70000026; 1310 enum DT_MIPS_HIDDEN_GOTIDX = 0x70000027; 1311 enum DT_MIPS_PROTECTED_GOTIDX = 0x70000028; 1312 enum DT_MIPS_OPTIONS = 0x70000029; 1313 enum DT_MIPS_INTERFACE = 0x7000002a; 1314 enum DT_MIPS_DYNSTR_ALIGN = 0x7000002b; 1315 enum DT_MIPS_INTERFACE_SIZE = 0x7000002c; 1316 enum DT_MIPS_RLD_TEXT_RESOLVE_ADDR = 0x7000002d; 1317 enum DT_MIPS_PERF_SUFFIX = 0x7000002e; 1318 enum DT_MIPS_COMPACT_SIZE = 0x7000002f; 1319 enum DT_MIPS_GP_VALUE = 0x70000030; 1320 enum DT_MIPS_AUX_DYNAMIC = 0x70000031; 1321 enum DT_MIPS_PLTGOT = 0x70000032; 1322 enum DT_MIPS_RWPLT = 0x70000034; 1323 enum DT_MIPS_NUM = 0x35; 1324 1325 enum RHF_NONE = 0; 1326 enum RHF_QUICKSTART = (1 << 0); 1327 enum RHF_NOTPOT = (1 << 1); 1328 enum RHF_NO_LIBRARY_REPLACEMENT = (1 << 2); 1329 enum RHF_NO_MOVE = (1 << 3); 1330 enum RHF_SGI_ONLY = (1 << 4); 1331 enum RHF_GUARANTEE_INIT = (1 << 5); 1332 enum RHF_DELTA_C_PLUS_PLUS = (1 << 6); 1333 enum RHF_GUARANTEE_START_INIT = (1 << 7); 1334 enum RHF_PIXIE = (1 << 8); 1335 enum RHF_DEFAULT_DELAY_LOAD = (1 << 9); 1336 enum RHF_REQUICKSTART = (1 << 10); 1337 enum RHF_REQUICKSTARTED = (1 << 11); 1338 enum RHF_CORD = (1 << 12); 1339 enum RHF_NO_UNRES_UNDEF = (1 << 13); 1340 enum RHF_RLD_ORDER_SAFE = (1 << 14); 1341 1342 struct Elf32_Lib { 1343 Elf32_Word l_name; 1344 Elf32_Word l_time_stamp; 1345 Elf32_Word l_checksum; 1346 Elf32_Word l_version; 1347 Elf32_Word l_flags; 1348 } 1349 1350 struct Elf64_Lib { 1351 Elf64_Word l_name; 1352 Elf64_Word l_time_stamp; 1353 Elf64_Word l_checksum; 1354 Elf64_Word l_version; 1355 Elf64_Word l_flags; 1356 } 1357 1358 enum LL_NONE = 0; 1359 enum LL_EXACT_MATCH = (1 << 0); 1360 enum LL_IGNORE_INT_VER = (1 << 1); 1361 enum LL_REQUIRE_MINOR = (1 << 2); 1362 enum LL_EXPORTS = (1 << 3); 1363 enum LL_DELAY_LOAD = (1 << 4); 1364 enum LL_DELTA = (1 << 5); 1365 1366 alias Elf32_Conflict = Elf32_Addr; 1367 1368 enum EF_PARISC_TRAPNIL = 0x00010000; 1369 enum EF_PARISC_EXT = 0x00020000; 1370 enum EF_PARISC_LSB = 0x00040000; 1371 enum EF_PARISC_WIDE = 0x00080000; 1372 enum EF_PARISC_NO_KABP = 0x00100000; 1373 enum EF_PARISC_LAZYSWAP = 0x00400000; 1374 enum EF_PARISC_ARCH = 0x0000ffff; 1375 1376 enum EFA_PARISC_1_0 = 0x020b; 1377 enum EFA_PARISC_1_1 = 0x0210; 1378 enum EFA_PARISC_2_0 = 0x0214; 1379 1380 enum SHN_PARISC_ANSI_COMMON = 0xff00; 1381 enum SHN_PARISC_HUGE_COMMON = 0xff01; 1382 1383 enum SHT_PARISC_EXT = 0x70000000; 1384 enum SHT_PARISC_UNWIND = 0x70000001; 1385 enum SHT_PARISC_DOC = 0x70000002; 1386 1387 enum SHF_PARISC_SHORT = 0x20000000; 1388 enum SHF_PARISC_HUGE = 0x40000000; 1389 enum SHF_PARISC_SBP = 0x80000000; 1390 1391 enum STT_PARISC_MILLICODE = 13; 1392 1393 enum STT_HP_OPAQUE = (STT_LOOS + 0x1); 1394 enum STT_HP_STUB = (STT_LOOS + 0x2); 1395 1396 enum R_PARISC_NONE = 0; 1397 enum R_PARISC_DIR32 = 1; 1398 enum R_PARISC_DIR21L = 2; 1399 enum R_PARISC_DIR17R = 3; 1400 enum R_PARISC_DIR17F = 4; 1401 enum R_PARISC_DIR14R = 6; 1402 enum R_PARISC_PCREL32 = 9; 1403 enum R_PARISC_PCREL21L = 10; 1404 enum R_PARISC_PCREL17R = 11; 1405 enum R_PARISC_PCREL17F = 12; 1406 enum R_PARISC_PCREL14R = 14; 1407 enum R_PARISC_DPREL21L = 18; 1408 enum R_PARISC_DPREL14R = 22; 1409 enum R_PARISC_GPREL21L = 26; 1410 enum R_PARISC_GPREL14R = 30; 1411 enum R_PARISC_LTOFF21L = 34; 1412 enum R_PARISC_LTOFF14R = 38; 1413 enum R_PARISC_SECREL32 = 41; 1414 enum R_PARISC_SEGBASE = 48; 1415 enum R_PARISC_SEGREL32 = 49; 1416 enum R_PARISC_PLTOFF21L = 50; 1417 enum R_PARISC_PLTOFF14R = 54; 1418 enum R_PARISC_LTOFF_FPTR32 = 57; 1419 enum R_PARISC_LTOFF_FPTR21L = 58; 1420 enum R_PARISC_LTOFF_FPTR14R = 62; 1421 enum R_PARISC_FPTR64 = 64; 1422 enum R_PARISC_PLABEL32 = 65; 1423 enum R_PARISC_PLABEL21L = 66; 1424 enum R_PARISC_PLABEL14R = 70; 1425 enum R_PARISC_PCREL64 = 72; 1426 enum R_PARISC_PCREL22F = 74; 1427 enum R_PARISC_PCREL14WR = 75; 1428 enum R_PARISC_PCREL14DR = 76; 1429 enum R_PARISC_PCREL16F = 77; 1430 enum R_PARISC_PCREL16WF = 78; 1431 enum R_PARISC_PCREL16DF = 79; 1432 enum R_PARISC_DIR64 = 80; 1433 enum R_PARISC_DIR14WR = 83; 1434 enum R_PARISC_DIR14DR = 84; 1435 enum R_PARISC_DIR16F = 85; 1436 enum R_PARISC_DIR16WF = 86; 1437 enum R_PARISC_DIR16DF = 87; 1438 enum R_PARISC_GPREL64 = 88; 1439 enum R_PARISC_GPREL14WR = 91; 1440 enum R_PARISC_GPREL14DR = 92; 1441 enum R_PARISC_GPREL16F = 93; 1442 enum R_PARISC_GPREL16WF = 94; 1443 enum R_PARISC_GPREL16DF = 95; 1444 enum R_PARISC_LTOFF64 = 96; 1445 enum R_PARISC_LTOFF14WR = 99; 1446 enum R_PARISC_LTOFF14DR = 100; 1447 enum R_PARISC_LTOFF16F = 101; 1448 enum R_PARISC_LTOFF16WF = 102; 1449 enum R_PARISC_LTOFF16DF = 103; 1450 enum R_PARISC_SECREL64 = 104; 1451 enum R_PARISC_SEGREL64 = 112; 1452 enum R_PARISC_PLTOFF14WR = 115; 1453 enum R_PARISC_PLTOFF14DR = 116; 1454 enum R_PARISC_PLTOFF16F = 117; 1455 enum R_PARISC_PLTOFF16WF = 118; 1456 enum R_PARISC_PLTOFF16DF = 119; 1457 enum R_PARISC_LTOFF_FPTR64 = 120; 1458 enum R_PARISC_LTOFF_FPTR14WR = 123; 1459 enum R_PARISC_LTOFF_FPTR14DR = 124; 1460 enum R_PARISC_LTOFF_FPTR16F = 125; 1461 enum R_PARISC_LTOFF_FPTR16WF = 126; 1462 enum R_PARISC_LTOFF_FPTR16DF = 127; 1463 enum R_PARISC_LORESERVE = 128; 1464 enum R_PARISC_COPY = 128; 1465 enum R_PARISC_IPLT = 129; 1466 enum R_PARISC_EPLT = 130; 1467 enum R_PARISC_TPREL32 = 153; 1468 enum R_PARISC_TPREL21L = 154; 1469 enum R_PARISC_TPREL14R = 158; 1470 enum R_PARISC_LTOFF_TP21L = 162; 1471 enum R_PARISC_LTOFF_TP14R = 166; 1472 enum R_PARISC_LTOFF_TP14F = 167; 1473 enum R_PARISC_TPREL64 = 216; 1474 enum R_PARISC_TPREL14WR = 219; 1475 enum R_PARISC_TPREL14DR = 220; 1476 enum R_PARISC_TPREL16F = 221; 1477 enum R_PARISC_TPREL16WF = 222; 1478 enum R_PARISC_TPREL16DF = 223; 1479 enum R_PARISC_LTOFF_TP64 = 224; 1480 enum R_PARISC_LTOFF_TP14WR = 227; 1481 enum R_PARISC_LTOFF_TP14DR = 228; 1482 enum R_PARISC_LTOFF_TP16F = 229; 1483 enum R_PARISC_LTOFF_TP16WF = 230; 1484 enum R_PARISC_LTOFF_TP16DF = 231; 1485 enum R_PARISC_GNU_VTENTRY = 232; 1486 enum R_PARISC_GNU_VTINHERIT = 233; 1487 enum R_PARISC_TLS_GD21L = 234; 1488 enum R_PARISC_TLS_GD14R = 235; 1489 enum R_PARISC_TLS_GDCALL = 236; 1490 enum R_PARISC_TLS_LDM21L = 237; 1491 enum R_PARISC_TLS_LDM14R = 238; 1492 enum R_PARISC_TLS_LDMCALL = 239; 1493 enum R_PARISC_TLS_LDO21L = 240; 1494 enum R_PARISC_TLS_LDO14R = 241; 1495 enum R_PARISC_TLS_DTPMOD32 = 242; 1496 enum R_PARISC_TLS_DTPMOD64 = 243; 1497 enum R_PARISC_TLS_DTPOFF32 = 244; 1498 enum R_PARISC_TLS_DTPOFF64 = 245; 1499 enum R_PARISC_TLS_LE21L = R_PARISC_TPREL21L; 1500 enum R_PARISC_TLS_LE14R = R_PARISC_TPREL14R; 1501 enum R_PARISC_TLS_IE21L = R_PARISC_LTOFF_TP21L; 1502 enum R_PARISC_TLS_IE14R = R_PARISC_LTOFF_TP14R; 1503 enum R_PARISC_TLS_TPREL32 = R_PARISC_TPREL32; 1504 enum R_PARISC_TLS_TPREL64 = R_PARISC_TPREL64; 1505 enum R_PARISC_HIRESERVE = 255; 1506 1507 enum PT_HP_TLS = (PT_LOOS + 0x0); 1508 enum PT_HP_CORE_NONE = (PT_LOOS + 0x1); 1509 enum PT_HP_CORE_VERSION = (PT_LOOS + 0x2); 1510 enum PT_HP_CORE_KERNEL = (PT_LOOS + 0x3); 1511 enum PT_HP_CORE_COMM = (PT_LOOS + 0x4); 1512 enum PT_HP_CORE_PROC = (PT_LOOS + 0x5); 1513 enum PT_HP_CORE_LOADABLE = (PT_LOOS + 0x6); 1514 enum PT_HP_CORE_STACK = (PT_LOOS + 0x7); 1515 enum PT_HP_CORE_SHM = (PT_LOOS + 0x8); 1516 enum PT_HP_CORE_MMF = (PT_LOOS + 0x9); 1517 enum PT_HP_PARALLEL = (PT_LOOS + 0x10); 1518 enum PT_HP_FASTBIND = (PT_LOOS + 0x11); 1519 enum PT_HP_OPT_ANNOT = (PT_LOOS + 0x12); 1520 enum PT_HP_HSL_ANNOT = (PT_LOOS + 0x13); 1521 enum PT_HP_STACK = (PT_LOOS + 0x14); 1522 1523 enum PT_PARISC_ARCHEXT = 0x70000000; 1524 enum PT_PARISC_UNWIND = 0x70000001; 1525 1526 enum PF_PARISC_SBP = 0x08000000; 1527 1528 enum PF_HP_PAGE_SIZE = 0x00100000; 1529 enum PF_HP_FAR_SHARED = 0x00200000; 1530 enum PF_HP_NEAR_SHARED = 0x00400000; 1531 enum PF_HP_CODE = 0x01000000; 1532 enum PF_HP_MODIFY = 0x02000000; 1533 enum PF_HP_LAZYSWAP = 0x04000000; 1534 enum PF_HP_SBP = 0x08000000; 1535 1536 enum EF_ALPHA_32BIT = 1; 1537 enum EF_ALPHA_CANRELAX = 2; 1538 enum SHT_ALPHA_DEBUG = 0x70000001; 1539 enum SHT_ALPHA_REGINFO = 0x70000002; 1540 1541 enum SHF_ALPHA_GPREL = 0x10000000; 1542 enum STO_ALPHA_NOPV = 0x80; 1543 enum STO_ALPHA_STD_GPLOAD = 0x88; 1544 1545 enum R_ALPHA_NONE = 0; 1546 enum R_ALPHA_REFLONG = 1; 1547 enum R_ALPHA_REFQUAD = 2; 1548 enum R_ALPHA_GPREL32 = 3; 1549 enum R_ALPHA_LITERAL = 4; 1550 enum R_ALPHA_LITUSE = 5; 1551 enum R_ALPHA_GPDISP = 6; 1552 enum R_ALPHA_BRADDR = 7; 1553 enum R_ALPHA_HINT = 8; 1554 enum R_ALPHA_SREL16 = 9; 1555 enum R_ALPHA_SREL32 = 10; 1556 enum R_ALPHA_SREL64 = 11; 1557 enum R_ALPHA_GPRELHIGH = 17; 1558 enum R_ALPHA_GPRELLOW = 18; 1559 enum R_ALPHA_GPREL16 = 19; 1560 enum R_ALPHA_COPY = 24; 1561 enum R_ALPHA_GLOB_DAT = 25; 1562 enum R_ALPHA_JMP_SLOT = 26; 1563 enum R_ALPHA_RELATIVE = 27; 1564 enum R_ALPHA_TLS_GD_HI = 28; 1565 enum R_ALPHA_TLSGD = 29; 1566 enum R_ALPHA_TLS_LDM = 30; 1567 enum R_ALPHA_DTPMOD64 = 31; 1568 enum R_ALPHA_GOTDTPREL = 32; 1569 enum R_ALPHA_DTPREL64 = 33; 1570 enum R_ALPHA_DTPRELHI = 34; 1571 enum R_ALPHA_DTPRELLO = 35; 1572 enum R_ALPHA_DTPREL16 = 36; 1573 enum R_ALPHA_GOTTPREL = 37; 1574 enum R_ALPHA_TPREL64 = 38; 1575 enum R_ALPHA_TPRELHI = 39; 1576 enum R_ALPHA_TPRELLO = 40; 1577 enum R_ALPHA_TPREL16 = 41; 1578 enum R_ALPHA_NUM = 46; 1579 enum LITUSE_ALPHA_ADDR = 0; 1580 enum LITUSE_ALPHA_BASE = 1; 1581 enum LITUSE_ALPHA_BYTOFF = 2; 1582 enum LITUSE_ALPHA_JSR = 3; 1583 enum LITUSE_ALPHA_TLS_GD = 4; 1584 enum LITUSE_ALPHA_TLS_LDM = 5; 1585 enum DT_ALPHA_PLTRO = (DT_LOPROC + 0); 1586 enum DT_ALPHA_NUM = 1; 1587 enum EF_PPC_EMB = 0x80000000; 1588 enum EF_PPC_RELOCATABLE = 0x00010000; 1589 enum EF_PPC_RELOCATABLE_LIB = 0x00008000; 1590 enum R_PPC_NONE = 0; 1591 enum R_PPC_ADDR32 = 1; 1592 enum R_PPC_ADDR24 = 2; 1593 enum R_PPC_ADDR16 = 3; 1594 enum R_PPC_ADDR16_LO = 4; 1595 enum R_PPC_ADDR16_HI = 5; 1596 enum R_PPC_ADDR16_HA = 6; 1597 enum R_PPC_ADDR14 = 7; 1598 enum R_PPC_ADDR14_BRTAKEN = 8; 1599 enum R_PPC_ADDR14_BRNTAKEN = 9; 1600 enum R_PPC_REL24 = 10; 1601 enum R_PPC_REL14 = 11; 1602 enum R_PPC_REL14_BRTAKEN = 12; 1603 enum R_PPC_REL14_BRNTAKEN = 13; 1604 enum R_PPC_GOT16 = 14; 1605 enum R_PPC_GOT16_LO = 15; 1606 enum R_PPC_GOT16_HI = 16; 1607 enum R_PPC_GOT16_HA = 17; 1608 enum R_PPC_PLTREL24 = 18; 1609 enum R_PPC_COPY = 19; 1610 enum R_PPC_GLOB_DAT = 20; 1611 enum R_PPC_JMP_SLOT = 21; 1612 enum R_PPC_RELATIVE = 22; 1613 enum R_PPC_LOCAL24PC = 23; 1614 enum R_PPC_UADDR32 = 24; 1615 enum R_PPC_UADDR16 = 25; 1616 enum R_PPC_REL32 = 26; 1617 enum R_PPC_PLT32 = 27; 1618 enum R_PPC_PLTREL32 = 28; 1619 enum R_PPC_PLT16_LO = 29; 1620 enum R_PPC_PLT16_HI = 30; 1621 enum R_PPC_PLT16_HA = 31; 1622 enum R_PPC_SDAREL16 = 32; 1623 enum R_PPC_SECTOFF = 33; 1624 enum R_PPC_SECTOFF_LO = 34; 1625 enum R_PPC_SECTOFF_HI = 35; 1626 enum R_PPC_SECTOFF_HA = 36; 1627 enum R_PPC_TLS = 67; 1628 enum R_PPC_DTPMOD32 = 68; 1629 enum R_PPC_TPREL16 = 69; 1630 enum R_PPC_TPREL16_LO = 70; 1631 enum R_PPC_TPREL16_HI = 71; 1632 enum R_PPC_TPREL16_HA = 72; 1633 enum R_PPC_TPREL32 = 73; 1634 enum R_PPC_DTPREL16 = 74; 1635 enum R_PPC_DTPREL16_LO = 75; 1636 enum R_PPC_DTPREL16_HI = 76; 1637 enum R_PPC_DTPREL16_HA = 77; 1638 enum R_PPC_DTPREL32 = 78; 1639 enum R_PPC_GOT_TLSGD16 = 79; 1640 enum R_PPC_GOT_TLSGD16_LO = 80; 1641 enum R_PPC_GOT_TLSGD16_HI = 81; 1642 enum R_PPC_GOT_TLSGD16_HA = 82; 1643 enum R_PPC_GOT_TLSLD16 = 83; 1644 enum R_PPC_GOT_TLSLD16_LO = 84; 1645 enum R_PPC_GOT_TLSLD16_HI = 85; 1646 enum R_PPC_GOT_TLSLD16_HA = 86; 1647 enum R_PPC_GOT_TPREL16 = 87; 1648 enum R_PPC_GOT_TPREL16_LO = 88; 1649 enum R_PPC_GOT_TPREL16_HI = 89; 1650 enum R_PPC_GOT_TPREL16_HA = 90; 1651 enum R_PPC_GOT_DTPREL16 = 91; 1652 enum R_PPC_GOT_DTPREL16_LO = 92; 1653 enum R_PPC_GOT_DTPREL16_HI = 93; 1654 enum R_PPC_GOT_DTPREL16_HA = 94; 1655 enum R_PPC_EMB_NADDR32 = 101; 1656 enum R_PPC_EMB_NADDR16 = 102; 1657 enum R_PPC_EMB_NADDR16_LO = 103; 1658 enum R_PPC_EMB_NADDR16_HI = 104; 1659 enum R_PPC_EMB_NADDR16_HA = 105; 1660 enum R_PPC_EMB_SDAI16 = 106; 1661 enum R_PPC_EMB_SDA2I16 = 107; 1662 enum R_PPC_EMB_SDA2REL = 108; 1663 enum R_PPC_EMB_SDA21 = 109; 1664 enum R_PPC_EMB_MRKREF = 110; 1665 enum R_PPC_EMB_RELSEC16 = 111; 1666 enum R_PPC_EMB_RELST_LO = 112; 1667 enum R_PPC_EMB_RELST_HI = 113; 1668 enum R_PPC_EMB_RELST_HA = 114; 1669 enum R_PPC_EMB_BIT_FLD = 115; 1670 enum R_PPC_EMB_RELSDA = 116; 1671 enum R_PPC_DIAB_SDA21_LO = 180; 1672 enum R_PPC_DIAB_SDA21_HI = 181; 1673 enum R_PPC_DIAB_SDA21_HA = 182; 1674 enum R_PPC_DIAB_RELSDA_LO = 183; 1675 enum R_PPC_DIAB_RELSDA_HI = 184; 1676 enum R_PPC_DIAB_RELSDA_HA = 185; 1677 enum R_PPC_IRELATIVE = 248; 1678 enum R_PPC_REL16 = 249; 1679 enum R_PPC_REL16_LO = 250; 1680 enum R_PPC_REL16_HI = 251; 1681 enum R_PPC_REL16_HA = 252; 1682 enum R_PPC_TOC16 = 255; 1683 enum DT_PPC_GOT = (DT_LOPROC + 0); 1684 enum DT_PPC_NUM = 1; 1685 enum R_PPC64_NONE = R_PPC_NONE; 1686 enum R_PPC64_ADDR32 = R_PPC_ADDR32; 1687 enum R_PPC64_ADDR24 = R_PPC_ADDR24; 1688 enum R_PPC64_ADDR16 = R_PPC_ADDR16; 1689 enum R_PPC64_ADDR16_LO = R_PPC_ADDR16_LO; 1690 enum R_PPC64_ADDR16_HI = R_PPC_ADDR16_HI; 1691 enum R_PPC64_ADDR16_HA = R_PPC_ADDR16_HA; 1692 enum R_PPC64_ADDR14 = R_PPC_ADDR14; 1693 enum R_PPC64_ADDR14_BRTAKEN = R_PPC_ADDR14_BRTAKEN; 1694 enum R_PPC64_ADDR14_BRNTAKEN = R_PPC_ADDR14_BRNTAKEN; 1695 enum R_PPC64_REL24 = R_PPC_REL24; 1696 enum R_PPC64_REL14 = R_PPC_REL14; 1697 enum R_PPC64_REL14_BRTAKEN = R_PPC_REL14_BRTAKEN; 1698 enum R_PPC64_REL14_BRNTAKEN = R_PPC_REL14_BRNTAKEN; 1699 enum R_PPC64_GOT16 = R_PPC_GOT16; 1700 enum R_PPC64_GOT16_LO = R_PPC_GOT16_LO; 1701 enum R_PPC64_GOT16_HI = R_PPC_GOT16_HI; 1702 enum R_PPC64_GOT16_HA = R_PPC_GOT16_HA; 1703 1704 enum R_PPC64_COPY = R_PPC_COPY; 1705 enum R_PPC64_GLOB_DAT = R_PPC_GLOB_DAT; 1706 enum R_PPC64_JMP_SLOT = R_PPC_JMP_SLOT; 1707 enum R_PPC64_RELATIVE = R_PPC_RELATIVE; 1708 1709 enum R_PPC64_UADDR32 = R_PPC_UADDR32; 1710 enum R_PPC64_UADDR16 = R_PPC_UADDR16; 1711 enum R_PPC64_REL32 = R_PPC_REL32; 1712 enum R_PPC64_PLT32 = R_PPC_PLT32; 1713 enum R_PPC64_PLTREL32 = R_PPC_PLTREL32; 1714 enum R_PPC64_PLT16_LO = R_PPC_PLT16_LO; 1715 enum R_PPC64_PLT16_HI = R_PPC_PLT16_HI; 1716 enum R_PPC64_PLT16_HA = R_PPC_PLT16_HA; 1717 1718 enum R_PPC64_SECTOFF = R_PPC_SECTOFF; 1719 enum R_PPC64_SECTOFF_LO = R_PPC_SECTOFF_LO; 1720 enum R_PPC64_SECTOFF_HI = R_PPC_SECTOFF_HI; 1721 enum R_PPC64_SECTOFF_HA = R_PPC_SECTOFF_HA; 1722 enum R_PPC64_ADDR30 = 37; 1723 enum R_PPC64_ADDR64 = 38; 1724 enum R_PPC64_ADDR16_HIGHER = 39; 1725 enum R_PPC64_ADDR16_HIGHERA = 40; 1726 enum R_PPC64_ADDR16_HIGHEST = 41; 1727 enum R_PPC64_ADDR16_HIGHESTA = 42; 1728 enum R_PPC64_UADDR64 = 43; 1729 enum R_PPC64_REL64 = 44; 1730 enum R_PPC64_PLT64 = 45; 1731 enum R_PPC64_PLTREL64 = 46; 1732 enum R_PPC64_TOC16 = 47; 1733 enum R_PPC64_TOC16_LO = 48; 1734 enum R_PPC64_TOC16_HI = 49; 1735 enum R_PPC64_TOC16_HA = 50; 1736 enum R_PPC64_TOC = 51; 1737 enum R_PPC64_PLTGOT16 = 52; 1738 enum R_PPC64_PLTGOT16_LO = 53; 1739 enum R_PPC64_PLTGOT16_HI = 54; 1740 enum R_PPC64_PLTGOT16_HA = 55; 1741 1742 enum R_PPC64_ADDR16_DS = 56; 1743 enum R_PPC64_ADDR16_LO_DS = 57; 1744 enum R_PPC64_GOT16_DS = 58; 1745 enum R_PPC64_GOT16_LO_DS = 59; 1746 enum R_PPC64_PLT16_LO_DS = 60; 1747 enum R_PPC64_SECTOFF_DS = 61; 1748 enum R_PPC64_SECTOFF_LO_DS = 62; 1749 enum R_PPC64_TOC16_DS = 63; 1750 enum R_PPC64_TOC16_LO_DS = 64; 1751 enum R_PPC64_PLTGOT16_DS = 65; 1752 enum R_PPC64_PLTGOT16_LO_DS = 66; 1753 enum R_PPC64_TLS = 67; 1754 enum R_PPC64_DTPMOD64 = 68; 1755 enum R_PPC64_TPREL16 = 69; 1756 enum R_PPC64_TPREL16_LO = 70; 1757 enum R_PPC64_TPREL16_HI = 71; 1758 enum R_PPC64_TPREL16_HA = 72; 1759 enum R_PPC64_TPREL64 = 73; 1760 enum R_PPC64_DTPREL16 = 74; 1761 enum R_PPC64_DTPREL16_LO = 75; 1762 enum R_PPC64_DTPREL16_HI = 76; 1763 enum R_PPC64_DTPREL16_HA = 77; 1764 enum R_PPC64_DTPREL64 = 78; 1765 enum R_PPC64_GOT_TLSGD16 = 79; 1766 enum R_PPC64_GOT_TLSGD16_LO = 80; 1767 enum R_PPC64_GOT_TLSGD16_HI = 81; 1768 enum R_PPC64_GOT_TLSGD16_HA = 82; 1769 enum R_PPC64_GOT_TLSLD16 = 83; 1770 enum R_PPC64_GOT_TLSLD16_LO = 84; 1771 enum R_PPC64_GOT_TLSLD16_HI = 85; 1772 enum R_PPC64_GOT_TLSLD16_HA = 86; 1773 enum R_PPC64_GOT_TPREL16_DS = 87; 1774 enum R_PPC64_GOT_TPREL16_LO_DS = 88; 1775 enum R_PPC64_GOT_TPREL16_HI = 89; 1776 enum R_PPC64_GOT_TPREL16_HA = 90; 1777 enum R_PPC64_GOT_DTPREL16_DS = 91; 1778 enum R_PPC64_GOT_DTPREL16_LO_DS = 92; 1779 enum R_PPC64_GOT_DTPREL16_HI = 93; 1780 enum R_PPC64_GOT_DTPREL16_HA = 94; 1781 enum R_PPC64_TPREL16_DS = 95; 1782 enum R_PPC64_TPREL16_LO_DS = 96; 1783 enum R_PPC64_TPREL16_HIGHER = 97; 1784 enum R_PPC64_TPREL16_HIGHERA = 98; 1785 enum R_PPC64_TPREL16_HIGHEST = 99; 1786 enum R_PPC64_TPREL16_HIGHESTA = 100; 1787 enum R_PPC64_DTPREL16_DS = 101; 1788 enum R_PPC64_DTPREL16_LO_DS = 102; 1789 enum R_PPC64_DTPREL16_HIGHER = 103; 1790 enum R_PPC64_DTPREL16_HIGHERA = 104; 1791 enum R_PPC64_DTPREL16_HIGHEST = 105; 1792 enum R_PPC64_DTPREL16_HIGHESTA = 106; 1793 enum R_PPC64_JMP_IREL = 247; 1794 enum R_PPC64_IRELATIVE = 248; 1795 enum R_PPC64_REL16 = 249; 1796 enum R_PPC64_REL16_LO = 250; 1797 enum R_PPC64_REL16_HI = 251; 1798 enum R_PPC64_REL16_HA = 252; 1799 enum DT_PPC64_GLINK = (DT_LOPROC + 0); 1800 enum DT_PPC64_OPD = (DT_LOPROC + 1); 1801 enum DT_PPC64_OPDSZ = (DT_LOPROC + 2); 1802 enum DT_PPC64_NUM = 3; 1803 enum EF_ARM_RELEXEC = 0x01; 1804 enum EF_ARM_HASENTRY = 0x02; 1805 enum EF_ARM_INTERWORK = 0x04; 1806 enum EF_ARM_APCS_26 = 0x08; 1807 enum EF_ARM_APCS_FLOAT = 0x10; 1808 enum EF_ARM_PIC = 0x20; 1809 enum EF_ARM_ALIGN8 = 0x40; 1810 enum EF_ARM_NEW_ABI = 0x80; 1811 enum EF_ARM_OLD_ABI = 0x100; 1812 enum EF_ARM_SOFT_FLOAT = 0x200; 1813 enum EF_ARM_VFP_FLOAT = 0x400; 1814 enum EF_ARM_MAVERICK_FLOAT = 0x800; 1815 1816 enum EF_ARM_ABI_FLOAT_SOFT = 0x200; 1817 enum EF_ARM_ABI_FLOAT_HARD = 0x400; 1818 enum EF_ARM_SYMSARESORTED = 0x04; 1819 enum EF_ARM_DYNSYMSUSESEGIDX = 0x08; 1820 enum EF_ARM_MAPSYMSFIRST = 0x10; 1821 enum EF_ARM_EABIMASK = 0XFF000000; 1822 enum EF_ARM_BE8 = 0x00800000; 1823 enum EF_ARM_LE8 = 0x00400000; 1824 1825 extern(D) auto EF_ARM_EABI_VERSION(F)(F flags) { return flags & EF_ARM_EABIMASK; } 1826 1827 enum EF_ARM_EABI_UNKNOWN = 0x00000000; 1828 enum EF_ARM_EABI_VER1 = 0x01000000; 1829 enum EF_ARM_EABI_VER2 = 0x02000000; 1830 enum EF_ARM_EABI_VER3 = 0x03000000; 1831 enum EF_ARM_EABI_VER4 = 0x04000000; 1832 enum EF_ARM_EABI_VER5 = 0x05000000; 1833 enum STT_ARM_TFUNC = STT_LOPROC; 1834 enum STT_ARM_16BIT = STT_HIPROC; 1835 enum SHF_ARM_ENTRYSECT = 0x10000000; 1836 enum SHF_ARM_COMDEF = 0x80000000; 1837 enum PF_ARM_SB = 0x10000000; 1838 enum PF_ARM_PI = 0x20000000; 1839 enum PF_ARM_ABS = 0x40000000; 1840 enum PT_ARM_EXIDX = (PT_LOPROC + 1); 1841 enum SHT_ARM_EXIDX = (SHT_LOPROC + 1); 1842 enum SHT_ARM_PREEMPTMAP = (SHT_LOPROC + 2); 1843 enum SHT_ARM_ATTRIBUTES = (SHT_LOPROC + 3); 1844 1845 enum R_AARCH64_NONE = 0; 1846 enum R_AARCH64_ABS64 = 257; 1847 enum R_AARCH64_ABS32 = 258; 1848 enum R_AARCH64_COPY = 1024; 1849 enum R_AARCH64_GLOB_DAT = 1025; 1850 enum R_AARCH64_JUMP_SLOT = 1026; 1851 enum R_AARCH64_RELATIVE = 1027; 1852 enum R_AARCH64_TLS_DTPMOD64 = 1028; 1853 enum R_AARCH64_TLS_DTPREL64 = 1029; 1854 enum R_AARCH64_TLS_TPREL64 = 1030; 1855 enum R_AARCH64_TLSDESC = 1031; 1856 1857 enum R_ARM_NONE = 0; 1858 enum R_ARM_PC24 = 1; 1859 enum R_ARM_ABS32 = 2; 1860 enum R_ARM_REL32 = 3; 1861 enum R_ARM_PC13 = 4; 1862 enum R_ARM_ABS16 = 5; 1863 enum R_ARM_ABS12 = 6; 1864 enum R_ARM_THM_ABS5 = 7; 1865 enum R_ARM_ABS8 = 8; 1866 enum R_ARM_SBREL32 = 9; 1867 enum R_ARM_THM_PC22 = 10; 1868 enum R_ARM_THM_PC8 = 11; 1869 enum R_ARM_AMP_VCALL9 = 12; 1870 enum R_ARM_SWI24 = 13; 1871 enum R_ARM_TLS_DESC = 13; 1872 enum R_ARM_THM_SWI8 = 14; 1873 enum R_ARM_XPC25 = 15; 1874 enum R_ARM_THM_XPC22 = 16; 1875 enum R_ARM_TLS_DTPMOD32 = 17; 1876 enum R_ARM_TLS_DTPOFF32 = 18; 1877 enum R_ARM_TLS_TPOFF32 = 19; 1878 enum R_ARM_COPY = 20; 1879 enum R_ARM_GLOB_DAT = 21; 1880 enum R_ARM_JUMP_SLOT = 22; 1881 enum R_ARM_RELATIVE = 23; 1882 enum R_ARM_GOTOFF = 24; 1883 enum R_ARM_GOTPC = 25; 1884 enum R_ARM_GOT32 = 26; 1885 enum R_ARM_PLT32 = 27; 1886 enum R_ARM_ALU_PCREL_7_0 = 32; 1887 enum R_ARM_ALU_PCREL_15_8 = 33; 1888 enum R_ARM_ALU_PCREL_23_15 = 34; 1889 enum R_ARM_LDR_SBREL_11_0 = 35; 1890 enum R_ARM_ALU_SBREL_19_12 = 36; 1891 enum R_ARM_ALU_SBREL_27_20 = 37; 1892 enum R_ARM_TLS_GOTDESC = 90; 1893 enum R_ARM_TLS_CALL = 91; 1894 enum R_ARM_TLS_DESCSEQ = 92; 1895 enum R_ARM_THM_TLS_CALL = 93; 1896 enum R_ARM_GNU_VTENTRY = 100; 1897 enum R_ARM_GNU_VTINHERIT = 101; 1898 enum R_ARM_THM_PC11 = 102; 1899 enum R_ARM_THM_PC9 = 103; 1900 enum R_ARM_TLS_GD32 = 104; 1901 enum R_ARM_TLS_LDM32 = 105; 1902 enum R_ARM_TLS_LDO32 = 106; 1903 enum R_ARM_TLS_IE32 = 107; 1904 enum R_ARM_TLS_LE32 = 108; 1905 enum R_ARM_THM_TLS_DESCSEQ = 129; 1906 enum R_ARM_IRELATIVE = 160; 1907 enum R_ARM_RXPC25 = 249; 1908 enum R_ARM_RSBREL32 = 250; 1909 enum R_ARM_THM_RPC22 = 251; 1910 enum R_ARM_RREL32 = 252; 1911 enum R_ARM_RABS22 = 253; 1912 enum R_ARM_RPC24 = 254; 1913 enum R_ARM_RBASE = 255; 1914 enum R_ARM_NUM = 256; 1915 enum EF_IA_64_MASKOS = 0x0000000f; 1916 enum EF_IA_64_ABI64 = 0x00000010; 1917 enum EF_IA_64_ARCH = 0xff000000; 1918 enum PT_IA_64_ARCHEXT = (PT_LOPROC + 0); 1919 enum PT_IA_64_UNWIND = (PT_LOPROC + 1); 1920 enum PT_IA_64_HP_OPT_ANOT = (PT_LOOS + 0x12); 1921 enum PT_IA_64_HP_HSL_ANOT = (PT_LOOS + 0x13); 1922 enum PT_IA_64_HP_STACK = (PT_LOOS + 0x14); 1923 enum PF_IA_64_NORECOV = 0x80000000; 1924 enum SHT_IA_64_EXT = (SHT_LOPROC + 0); 1925 enum SHT_IA_64_UNWIND = (SHT_LOPROC + 1); 1926 enum SHF_IA_64_SHORT = 0x10000000; 1927 enum SHF_IA_64_NORECOV = 0x20000000; 1928 enum DT_IA_64_PLT_RESERVE = (DT_LOPROC + 0); 1929 enum DT_IA_64_NUM = 1; 1930 enum R_IA64_NONE = 0x00; 1931 enum R_IA64_IMM14 = 0x21; 1932 enum R_IA64_IMM22 = 0x22; 1933 enum R_IA64_IMM64 = 0x23; 1934 enum R_IA64_DIR32MSB = 0x24; 1935 enum R_IA64_DIR32LSB = 0x25; 1936 enum R_IA64_DIR64MSB = 0x26; 1937 enum R_IA64_DIR64LSB = 0x27; 1938 enum R_IA64_GPREL22 = 0x2a; 1939 enum R_IA64_GPREL64I = 0x2b; 1940 enum R_IA64_GPREL32MSB = 0x2c; 1941 enum R_IA64_GPREL32LSB = 0x2d; 1942 enum R_IA64_GPREL64MSB = 0x2e; 1943 enum R_IA64_GPREL64LSB = 0x2f; 1944 enum R_IA64_LTOFF22 = 0x32; 1945 enum R_IA64_LTOFF64I = 0x33; 1946 enum R_IA64_PLTOFF22 = 0x3a; 1947 enum R_IA64_PLTOFF64I = 0x3b; 1948 enum R_IA64_PLTOFF64MSB = 0x3e; 1949 enum R_IA64_PLTOFF64LSB = 0x3f; 1950 enum R_IA64_FPTR64I = 0x43; 1951 enum R_IA64_FPTR32MSB = 0x44; 1952 enum R_IA64_FPTR32LSB = 0x45; 1953 enum R_IA64_FPTR64MSB = 0x46; 1954 enum R_IA64_FPTR64LSB = 0x47; 1955 enum R_IA64_PCREL60B = 0x48; 1956 enum R_IA64_PCREL21B = 0x49; 1957 enum R_IA64_PCREL21M = 0x4a; 1958 enum R_IA64_PCREL21F = 0x4b; 1959 enum R_IA64_PCREL32MSB = 0x4c; 1960 enum R_IA64_PCREL32LSB = 0x4d; 1961 enum R_IA64_PCREL64MSB = 0x4e; 1962 enum R_IA64_PCREL64LSB = 0x4f; 1963 enum R_IA64_LTOFF_FPTR22 = 0x52; 1964 enum R_IA64_LTOFF_FPTR64I = 0x53; 1965 enum R_IA64_LTOFF_FPTR32MSB = 0x54; 1966 enum R_IA64_LTOFF_FPTR32LSB = 0x55; 1967 enum R_IA64_LTOFF_FPTR64MSB = 0x56; 1968 enum R_IA64_LTOFF_FPTR64LSB = 0x57; 1969 enum R_IA64_SEGREL32MSB = 0x5c; 1970 enum R_IA64_SEGREL32LSB = 0x5d; 1971 enum R_IA64_SEGREL64MSB = 0x5e; 1972 enum R_IA64_SEGREL64LSB = 0x5f; 1973 enum R_IA64_SECREL32MSB = 0x64; 1974 enum R_IA64_SECREL32LSB = 0x65; 1975 enum R_IA64_SECREL64MSB = 0x66; 1976 enum R_IA64_SECREL64LSB = 0x67; 1977 enum R_IA64_REL32MSB = 0x6c; 1978 enum R_IA64_REL32LSB = 0x6d; 1979 enum R_IA64_REL64MSB = 0x6e; 1980 enum R_IA64_REL64LSB = 0x6f; 1981 enum R_IA64_LTV32MSB = 0x74; 1982 enum R_IA64_LTV32LSB = 0x75; 1983 enum R_IA64_LTV64MSB = 0x76; 1984 enum R_IA64_LTV64LSB = 0x77; 1985 enum R_IA64_PCREL21BI = 0x79; 1986 enum R_IA64_PCREL22 = 0x7a; 1987 enum R_IA64_PCREL64I = 0x7b; 1988 enum R_IA64_IPLTMSB = 0x80; 1989 enum R_IA64_IPLTLSB = 0x81; 1990 enum R_IA64_COPY = 0x84; 1991 enum R_IA64_SUB = 0x85; 1992 enum R_IA64_LTOFF22X = 0x86; 1993 enum R_IA64_LDXMOV = 0x87; 1994 enum R_IA64_TPREL14 = 0x91; 1995 enum R_IA64_TPREL22 = 0x92; 1996 enum R_IA64_TPREL64I = 0x93; 1997 enum R_IA64_TPREL64MSB = 0x96; 1998 enum R_IA64_TPREL64LSB = 0x97; 1999 enum R_IA64_LTOFF_TPREL22 = 0x9a; 2000 enum R_IA64_DTPMOD64MSB = 0xa6; 2001 enum R_IA64_DTPMOD64LSB = 0xa7; 2002 enum R_IA64_LTOFF_DTPMOD22 = 0xaa; 2003 enum R_IA64_DTPREL14 = 0xb1; 2004 enum R_IA64_DTPREL22 = 0xb2; 2005 enum R_IA64_DTPREL64I = 0xb3; 2006 enum R_IA64_DTPREL32MSB = 0xb4; 2007 enum R_IA64_DTPREL32LSB = 0xb5; 2008 enum R_IA64_DTPREL64MSB = 0xb6; 2009 enum R_IA64_DTPREL64LSB = 0xb7; 2010 enum R_IA64_LTOFF_DTPREL22 = 0xba; 2011 enum EF_SH_MACH_MASK = 0x1f; 2012 enum EF_SH_UNKNOWN = 0x0; 2013 enum EF_SH1 = 0x1; 2014 enum EF_SH2 = 0x2; 2015 enum EF_SH3 = 0x3; 2016 enum EF_SH_DSP = 0x4; 2017 enum EF_SH3_DSP = 0x5; 2018 enum EF_SH4AL_DSP = 0x6; 2019 enum EF_SH3E = 0x8; 2020 enum EF_SH4 = 0x9; 2021 enum EF_SH2E = 0xb; 2022 enum EF_SH4A = 0xc; 2023 enum EF_SH2A = 0xd; 2024 enum EF_SH4_NOFPU = 0x10; 2025 enum EF_SH4A_NOFPU = 0x11; 2026 enum EF_SH4_NOMMU_NOFPU = 0x12; 2027 enum EF_SH2A_NOFPU = 0x13; 2028 enum EF_SH3_NOMMU = 0x14; 2029 enum EF_SH2A_SH4_NOFPU = 0x15; 2030 enum EF_SH2A_SH3_NOFPU = 0x16; 2031 enum EF_SH2A_SH4 = 0x17; 2032 enum EF_SH2A_SH3E = 0x18; 2033 enum R_SH_NONE = 0; 2034 enum R_SH_DIR32 = 1; 2035 enum R_SH_REL32 = 2; 2036 enum R_SH_DIR8WPN = 3; 2037 enum R_SH_IND12W = 4; 2038 enum R_SH_DIR8WPL = 5; 2039 enum R_SH_DIR8WPZ = 6; 2040 enum R_SH_DIR8BP = 7; 2041 enum R_SH_DIR8W = 8; 2042 enum R_SH_DIR8L = 9; 2043 enum R_SH_SWITCH16 = 25; 2044 enum R_SH_SWITCH32 = 26; 2045 enum R_SH_USES = 27; 2046 enum R_SH_COUNT = 28; 2047 enum R_SH_ALIGN = 29; 2048 enum R_SH_CODE = 30; 2049 enum R_SH_DATA = 31; 2050 enum R_SH_LABEL = 32; 2051 enum R_SH_SWITCH8 = 33; 2052 enum R_SH_GNU_VTINHERIT = 34; 2053 enum R_SH_GNU_VTENTRY = 35; 2054 enum R_SH_TLS_GD_32 = 144; 2055 enum R_SH_TLS_LD_32 = 145; 2056 enum R_SH_TLS_LDO_32 = 146; 2057 enum R_SH_TLS_IE_32 = 147; 2058 enum R_SH_TLS_LE_32 = 148; 2059 enum R_SH_TLS_DTPMOD32 = 149; 2060 enum R_SH_TLS_DTPOFF32 = 150; 2061 enum R_SH_TLS_TPOFF32 = 151; 2062 enum R_SH_GOT32 = 160; 2063 enum R_SH_PLT32 = 161; 2064 enum R_SH_COPY = 162; 2065 enum R_SH_GLOB_DAT = 163; 2066 enum R_SH_JMP_SLOT = 164; 2067 enum R_SH_RELATIVE = 165; 2068 enum R_SH_GOTOFF = 166; 2069 enum R_SH_GOTPC = 167; 2070 enum R_SH_NUM = 256; 2071 2072 enum EF_S390_HIGH_GPRS = 0x00000001; 2073 2074 enum R_390_NONE = 0; 2075 enum R_390_8 = 1; 2076 enum R_390_12 = 2; 2077 enum R_390_16 = 3; 2078 enum R_390_32 = 4; 2079 enum R_390_PC32 = 5; 2080 enum R_390_GOT12 = 6; 2081 enum R_390_GOT32 = 7; 2082 enum R_390_PLT32 = 8; 2083 enum R_390_COPY = 9; 2084 enum R_390_GLOB_DAT = 10; 2085 enum R_390_JMP_SLOT = 11; 2086 enum R_390_RELATIVE = 12; 2087 enum R_390_GOTOFF32 = 13; 2088 enum R_390_GOTPC = 14; 2089 enum R_390_GOT16 = 15; 2090 enum R_390_PC16 = 16; 2091 enum R_390_PC16DBL = 17; 2092 enum R_390_PLT16DBL = 18; 2093 enum R_390_PC32DBL = 19; 2094 enum R_390_PLT32DBL = 20; 2095 enum R_390_GOTPCDBL = 21; 2096 enum R_390_64 = 22; 2097 enum R_390_PC64 = 23; 2098 enum R_390_GOT64 = 24; 2099 enum R_390_PLT64 = 25; 2100 enum R_390_GOTENT = 26; 2101 enum R_390_GOTOFF16 = 27; 2102 enum R_390_GOTOFF64 = 28; 2103 enum R_390_GOTPLT12 = 29; 2104 enum R_390_GOTPLT16 = 30; 2105 enum R_390_GOTPLT32 = 31; 2106 enum R_390_GOTPLT64 = 32; 2107 enum R_390_GOTPLTENT = 33; 2108 enum R_390_PLTOFF16 = 34; 2109 enum R_390_PLTOFF32 = 35; 2110 enum R_390_PLTOFF64 = 36; 2111 enum R_390_TLS_LOAD = 37; 2112 enum R_390_TLS_GDCALL = 38; 2113 enum R_390_TLS_LDCALL = 39; 2114 enum R_390_TLS_GD32 = 40; 2115 enum R_390_TLS_GD64 = 41; 2116 enum R_390_TLS_GOTIE12 = 42; 2117 enum R_390_TLS_GOTIE32 = 43; 2118 enum R_390_TLS_GOTIE64 = 44; 2119 enum R_390_TLS_LDM32 = 45; 2120 enum R_390_TLS_LDM64 = 46; 2121 enum R_390_TLS_IE32 = 47; 2122 enum R_390_TLS_IE64 = 48; 2123 enum R_390_TLS_IEENT = 49; 2124 enum R_390_TLS_LE32 = 50; 2125 enum R_390_TLS_LE64 = 51; 2126 enum R_390_TLS_LDO32 = 52; 2127 enum R_390_TLS_LDO64 = 53; 2128 enum R_390_TLS_DTPMOD = 54; 2129 enum R_390_TLS_DTPOFF = 55; 2130 enum R_390_TLS_TPOFF = 56; 2131 enum R_390_20 = 57; 2132 enum R_390_GOT20 = 58; 2133 enum R_390_GOTPLT20 = 59; 2134 enum R_390_TLS_GOTIE20 = 60; 2135 enum R_390_IRELATIVE = 61; 2136 enum R_390_NUM = 62; 2137 enum R_CRIS_NONE = 0; 2138 enum R_CRIS_8 = 1; 2139 enum R_CRIS_16 = 2; 2140 enum R_CRIS_32 = 3; 2141 enum R_CRIS_8_PCREL = 4; 2142 enum R_CRIS_16_PCREL = 5; 2143 enum R_CRIS_32_PCREL = 6; 2144 enum R_CRIS_GNU_VTINHERIT = 7; 2145 enum R_CRIS_GNU_VTENTRY = 8; 2146 enum R_CRIS_COPY = 9; 2147 enum R_CRIS_GLOB_DAT = 10; 2148 enum R_CRIS_JUMP_SLOT = 11; 2149 enum R_CRIS_RELATIVE = 12; 2150 enum R_CRIS_16_GOT = 13; 2151 enum R_CRIS_32_GOT = 14; 2152 enum R_CRIS_16_GOTPLT = 15; 2153 enum R_CRIS_32_GOTPLT = 16; 2154 enum R_CRIS_32_GOTREL = 17; 2155 enum R_CRIS_32_PLT_GOTREL = 18; 2156 enum R_CRIS_32_PLT_PCREL = 19; 2157 2158 enum R_CRIS_NUM = 20; 2159 enum R_X86_64_NONE = 0; 2160 enum R_X86_64_64 = 1; 2161 enum R_X86_64_PC32 = 2; 2162 enum R_X86_64_GOT32 = 3; 2163 enum R_X86_64_PLT32 = 4; 2164 enum R_X86_64_COPY = 5; 2165 enum R_X86_64_GLOB_DAT = 6; 2166 enum R_X86_64_JUMP_SLOT = 7; 2167 enum R_X86_64_RELATIVE = 8; 2168 enum R_X86_64_GOTPCREL = 9; 2169 enum R_X86_64_32 = 10; 2170 enum R_X86_64_32S = 11; 2171 enum R_X86_64_16 = 12; 2172 enum R_X86_64_PC16 = 13; 2173 enum R_X86_64_8 = 14; 2174 enum R_X86_64_PC8 = 15; 2175 enum R_X86_64_DTPMOD64 = 16; 2176 enum R_X86_64_DTPOFF64 = 17; 2177 enum R_X86_64_TPOFF64 = 18; 2178 enum R_X86_64_TLSGD = 19; 2179 enum R_X86_64_TLSLD = 20; 2180 enum R_X86_64_DTPOFF32 = 21; 2181 enum R_X86_64_GOTTPOFF = 22; 2182 enum R_X86_64_TPOFF32 = 23; 2183 enum R_X86_64_PC64 = 24; 2184 enum R_X86_64_GOTOFF64 = 25; 2185 enum R_X86_64_GOTPC32 = 26; 2186 enum R_X86_64_GOT64 = 27; 2187 enum R_X86_64_GOTPCREL64 = 28; 2188 enum R_X86_64_GOTPC64 = 29; 2189 enum R_X86_64_GOTPLT64 = 30; 2190 enum R_X86_64_PLTOFF64 = 31; 2191 enum R_X86_64_SIZE32 = 32; 2192 enum R_X86_64_SIZE64 = 33; 2193 enum R_X86_64_GOTPC32_TLSDESC = 34; 2194 enum R_X86_64_TLSDESC_CALL = 35; 2195 enum R_X86_64_TLSDESC = 36; 2196 enum R_X86_64_IRELATIVE = 37; 2197 enum R_X86_64_RELATIVE64 = 38; 2198 2199 enum R_X86_64_NUM = 39; 2200 enum R_MN10300_NONE = 0; 2201 enum R_MN10300_32 = 1; 2202 enum R_MN10300_16 = 2; 2203 enum R_MN10300_8 = 3; 2204 enum R_MN10300_PCREL32 = 4; 2205 enum R_MN10300_PCREL16 = 5; 2206 enum R_MN10300_PCREL8 = 6; 2207 enum R_MN10300_GNU_VTINHERIT = 7; 2208 enum R_MN10300_GNU_VTENTRY = 8; 2209 enum R_MN10300_24 = 9; 2210 enum R_MN10300_GOTPC32 = 10; 2211 enum R_MN10300_GOTPC16 = 11; 2212 enum R_MN10300_GOTOFF32 = 12; 2213 enum R_MN10300_GOTOFF24 = 13; 2214 enum R_MN10300_GOTOFF16 = 14; 2215 enum R_MN10300_PLT32 = 15; 2216 enum R_MN10300_PLT16 = 16; 2217 enum R_MN10300_GOT32 = 17; 2218 enum R_MN10300_GOT24 = 18; 2219 enum R_MN10300_GOT16 = 19; 2220 enum R_MN10300_COPY = 20; 2221 enum R_MN10300_GLOB_DAT = 21; 2222 enum R_MN10300_JMP_SLOT = 22; 2223 enum R_MN10300_RELATIVE = 23; 2224 enum R_MN10300_TLS_GD = 24; 2225 enum R_MN10300_TLS_LD = 25; 2226 enum R_MN10300_TLS_LDO = 26; 2227 enum R_MN10300_TLS_GOTIE = 27; 2228 enum R_MN10300_TLS_IE = 28; 2229 enum R_MN10300_TLS_LE = 29; 2230 enum R_MN10300_TLS_DTPMOD = 30; 2231 enum R_MN10300_TLS_DTPOFF = 31; 2232 enum R_MN10300_TLS_TPOFF = 32; 2233 enum R_MN10300_SYM_DIFF = 33; 2234 enum R_MN10300_ALIGN = 34; 2235 enum R_MN10300_NUM = 35; 2236 enum R_M32R_NONE = 0; 2237 enum R_M32R_16 = 1; 2238 enum R_M32R_32 = 2; 2239 enum R_M32R_24 = 3; 2240 enum R_M32R_10_PCREL = 4; 2241 enum R_M32R_18_PCREL = 5; 2242 enum R_M32R_26_PCREL = 6; 2243 enum R_M32R_HI16_ULO = 7; 2244 enum R_M32R_HI16_SLO = 8; 2245 enum R_M32R_LO16 = 9; 2246 enum R_M32R_SDA16 = 10; 2247 enum R_M32R_GNU_VTINHERIT = 11; 2248 enum R_M32R_GNU_VTENTRY = 12; 2249 enum R_M32R_16_RELA = 33; 2250 enum R_M32R_32_RELA = 34; 2251 enum R_M32R_24_RELA = 35; 2252 enum R_M32R_10_PCREL_RELA = 36; 2253 enum R_M32R_18_PCREL_RELA = 37; 2254 enum R_M32R_26_PCREL_RELA = 38; 2255 enum R_M32R_HI16_ULO_RELA = 39; 2256 enum R_M32R_HI16_SLO_RELA = 40; 2257 enum R_M32R_LO16_RELA = 41; 2258 enum R_M32R_SDA16_RELA = 42; 2259 enum R_M32R_RELA_GNU_VTINHERIT = 43; 2260 enum R_M32R_RELA_GNU_VTENTRY = 44; 2261 enum R_M32R_REL32 = 45; 2262 2263 enum R_M32R_GOT24 = 48; 2264 enum R_M32R_26_PLTREL = 49; 2265 enum R_M32R_COPY = 50; 2266 enum R_M32R_GLOB_DAT = 51; 2267 enum R_M32R_JMP_SLOT = 52; 2268 enum R_M32R_RELATIVE = 53; 2269 enum R_M32R_GOTOFF = 54; 2270 enum R_M32R_GOTPC24 = 55; 2271 enum R_M32R_GOT16_HI_ULO = 56; 2272 enum R_M32R_GOT16_HI_SLO = 57; 2273 enum R_M32R_GOT16_LO = 58; 2274 enum R_M32R_GOTPC_HI_ULO = 59; 2275 enum R_M32R_GOTPC_HI_SLO = 60; 2276 enum R_M32R_GOTPC_LO = 61; 2277 enum R_M32R_GOTOFF_HI_ULO = 62; 2278 enum R_M32R_GOTOFF_HI_SLO = 63; 2279 enum R_M32R_GOTOFF_LO = 64; 2280 enum R_M32R_NUM = 256; 2281 enum R_TILEPRO_NONE = 0; 2282 enum R_TILEPRO_32 = 1; 2283 enum R_TILEPRO_16 = 2; 2284 enum R_TILEPRO_8 = 3; 2285 enum R_TILEPRO_32_PCREL = 4; 2286 enum R_TILEPRO_16_PCREL = 5; 2287 enum R_TILEPRO_8_PCREL = 6; 2288 enum R_TILEPRO_LO16 = 7; 2289 enum R_TILEPRO_HI16 = 8; 2290 enum R_TILEPRO_HA16 = 9; 2291 enum R_TILEPRO_COPY = 10; 2292 enum R_TILEPRO_GLOB_DAT = 11; 2293 enum R_TILEPRO_JMP_SLOT = 12; 2294 enum R_TILEPRO_RELATIVE = 13; 2295 enum R_TILEPRO_BROFF_X1 = 14; 2296 enum R_TILEPRO_JOFFLONG_X1 = 15; 2297 enum R_TILEPRO_JOFFLONG_X1_PLT = 16; 2298 enum R_TILEPRO_IMM8_X0 = 17; 2299 enum R_TILEPRO_IMM8_Y0 = 18; 2300 enum R_TILEPRO_IMM8_X1 = 19; 2301 enum R_TILEPRO_IMM8_Y1 = 20; 2302 enum R_TILEPRO_MT_IMM15_X1 = 21; 2303 enum R_TILEPRO_MF_IMM15_X1 = 22; 2304 enum R_TILEPRO_IMM16_X0 = 23; 2305 enum R_TILEPRO_IMM16_X1 = 24; 2306 enum R_TILEPRO_IMM16_X0_LO = 25; 2307 enum R_TILEPRO_IMM16_X1_LO = 26; 2308 enum R_TILEPRO_IMM16_X0_HI = 27; 2309 enum R_TILEPRO_IMM16_X1_HI = 28; 2310 enum R_TILEPRO_IMM16_X0_HA = 29; 2311 enum R_TILEPRO_IMM16_X1_HA = 30; 2312 enum R_TILEPRO_IMM16_X0_PCREL = 31; 2313 enum R_TILEPRO_IMM16_X1_PCREL = 32; 2314 enum R_TILEPRO_IMM16_X0_LO_PCREL = 33; 2315 enum R_TILEPRO_IMM16_X1_LO_PCREL = 34; 2316 enum R_TILEPRO_IMM16_X0_HI_PCREL = 35; 2317 enum R_TILEPRO_IMM16_X1_HI_PCREL = 36; 2318 enum R_TILEPRO_IMM16_X0_HA_PCREL = 37; 2319 enum R_TILEPRO_IMM16_X1_HA_PCREL = 38; 2320 enum R_TILEPRO_IMM16_X0_GOT = 39; 2321 enum R_TILEPRO_IMM16_X1_GOT = 40; 2322 enum R_TILEPRO_IMM16_X0_GOT_LO = 41; 2323 enum R_TILEPRO_IMM16_X1_GOT_LO = 42; 2324 enum R_TILEPRO_IMM16_X0_GOT_HI = 43; 2325 enum R_TILEPRO_IMM16_X1_GOT_HI = 44; 2326 enum R_TILEPRO_IMM16_X0_GOT_HA = 45; 2327 enum R_TILEPRO_IMM16_X1_GOT_HA = 46; 2328 enum R_TILEPRO_MMSTART_X0 = 47; 2329 enum R_TILEPRO_MMEND_X0 = 48; 2330 enum R_TILEPRO_MMSTART_X1 = 49; 2331 enum R_TILEPRO_MMEND_X1 = 50; 2332 enum R_TILEPRO_SHAMT_X0 = 51; 2333 enum R_TILEPRO_SHAMT_X1 = 52; 2334 enum R_TILEPRO_SHAMT_Y0 = 53; 2335 enum R_TILEPRO_SHAMT_Y1 = 54; 2336 enum R_TILEPRO_DEST_IMM8_X1 = 55; 2337 enum R_TILEPRO_TLS_GD_CALL = 60; 2338 enum R_TILEPRO_IMM8_X0_TLS_GD_ADD = 61; 2339 enum R_TILEPRO_IMM8_X1_TLS_GD_ADD = 62; 2340 enum R_TILEPRO_IMM8_Y0_TLS_GD_ADD = 63; 2341 enum R_TILEPRO_IMM8_Y1_TLS_GD_ADD = 64; 2342 enum R_TILEPRO_TLS_IE_LOAD = 65; 2343 enum R_TILEPRO_IMM16_X0_TLS_GD = 66; 2344 enum R_TILEPRO_IMM16_X1_TLS_GD = 67; 2345 enum R_TILEPRO_IMM16_X0_TLS_GD_LO = 68; 2346 enum R_TILEPRO_IMM16_X1_TLS_GD_LO = 69; 2347 enum R_TILEPRO_IMM16_X0_TLS_GD_HI = 70; 2348 enum R_TILEPRO_IMM16_X1_TLS_GD_HI = 71; 2349 enum R_TILEPRO_IMM16_X0_TLS_GD_HA = 72; 2350 enum R_TILEPRO_IMM16_X1_TLS_GD_HA = 73; 2351 enum R_TILEPRO_IMM16_X0_TLS_IE = 74; 2352 enum R_TILEPRO_IMM16_X1_TLS_IE = 75; 2353 enum R_TILEPRO_IMM16_X0_TLS_IE_LO = 76; 2354 enum R_TILEPRO_IMM16_X1_TLS_IE_LO = 77; 2355 enum R_TILEPRO_IMM16_X0_TLS_IE_HI = 78; 2356 enum R_TILEPRO_IMM16_X1_TLS_IE_HI = 79; 2357 enum R_TILEPRO_IMM16_X0_TLS_IE_HA = 80; 2358 enum R_TILEPRO_IMM16_X1_TLS_IE_HA = 81; 2359 enum R_TILEPRO_TLS_DTPMOD32 = 82; 2360 enum R_TILEPRO_TLS_DTPOFF32 = 83; 2361 enum R_TILEPRO_TLS_TPOFF32 = 84; 2362 enum R_TILEPRO_IMM16_X0_TLS_LE = 85; 2363 enum R_TILEPRO_IMM16_X1_TLS_LE = 86; 2364 enum R_TILEPRO_IMM16_X0_TLS_LE_LO = 87; 2365 enum R_TILEPRO_IMM16_X1_TLS_LE_LO = 88; 2366 enum R_TILEPRO_IMM16_X0_TLS_LE_HI = 89; 2367 enum R_TILEPRO_IMM16_X1_TLS_LE_HI = 90; 2368 enum R_TILEPRO_IMM16_X0_TLS_LE_HA = 91; 2369 enum R_TILEPRO_IMM16_X1_TLS_LE_HA = 92; 2370 2371 enum R_TILEPRO_GNU_VTINHERIT = 128; 2372 enum R_TILEPRO_GNU_VTENTRY = 129; 2373 2374 enum R_TILEPRO_NUM = 130; 2375 enum R_TILEGX_NONE = 0; 2376 enum R_TILEGX_64 = 1; 2377 enum R_TILEGX_32 = 2; 2378 enum R_TILEGX_16 = 3; 2379 enum R_TILEGX_8 = 4; 2380 enum R_TILEGX_64_PCREL = 5; 2381 enum R_TILEGX_32_PCREL = 6; 2382 enum R_TILEGX_16_PCREL = 7; 2383 enum R_TILEGX_8_PCREL = 8; 2384 enum R_TILEGX_HW0 = 9; 2385 enum R_TILEGX_HW1 = 10; 2386 enum R_TILEGX_HW2 = 11; 2387 enum R_TILEGX_HW3 = 12; 2388 enum R_TILEGX_HW0_LAST = 13; 2389 enum R_TILEGX_HW1_LAST = 14; 2390 enum R_TILEGX_HW2_LAST = 15; 2391 enum R_TILEGX_COPY = 16; 2392 enum R_TILEGX_GLOB_DAT = 17; 2393 enum R_TILEGX_JMP_SLOT = 18; 2394 enum R_TILEGX_RELATIVE = 19; 2395 enum R_TILEGX_BROFF_X1 = 20; 2396 enum R_TILEGX_JUMPOFF_X1 = 21; 2397 enum R_TILEGX_JUMPOFF_X1_PLT = 22; 2398 enum R_TILEGX_IMM8_X0 = 23; 2399 enum R_TILEGX_IMM8_Y0 = 24; 2400 enum R_TILEGX_IMM8_X1 = 25; 2401 enum R_TILEGX_IMM8_Y1 = 26; 2402 enum R_TILEGX_DEST_IMM8_X1 = 27; 2403 enum R_TILEGX_MT_IMM14_X1 = 28; 2404 enum R_TILEGX_MF_IMM14_X1 = 29; 2405 enum R_TILEGX_MMSTART_X0 = 30; 2406 enum R_TILEGX_MMEND_X0 = 31; 2407 enum R_TILEGX_SHAMT_X0 = 32; 2408 enum R_TILEGX_SHAMT_X1 = 33; 2409 enum R_TILEGX_SHAMT_Y0 = 34; 2410 enum R_TILEGX_SHAMT_Y1 = 35; 2411 enum R_TILEGX_IMM16_X0_HW0 = 36; 2412 enum R_TILEGX_IMM16_X1_HW0 = 37; 2413 enum R_TILEGX_IMM16_X0_HW1 = 38; 2414 enum R_TILEGX_IMM16_X1_HW1 = 39; 2415 enum R_TILEGX_IMM16_X0_HW2 = 40; 2416 enum R_TILEGX_IMM16_X1_HW2 = 41; 2417 enum R_TILEGX_IMM16_X0_HW3 = 42; 2418 enum R_TILEGX_IMM16_X1_HW3 = 43; 2419 enum R_TILEGX_IMM16_X0_HW0_LAST = 44; 2420 enum R_TILEGX_IMM16_X1_HW0_LAST = 45; 2421 enum R_TILEGX_IMM16_X0_HW1_LAST = 46; 2422 enum R_TILEGX_IMM16_X1_HW1_LAST = 47; 2423 enum R_TILEGX_IMM16_X0_HW2_LAST = 48; 2424 enum R_TILEGX_IMM16_X1_HW2_LAST = 49; 2425 enum R_TILEGX_IMM16_X0_HW0_PCREL = 50; 2426 enum R_TILEGX_IMM16_X1_HW0_PCREL = 51; 2427 enum R_TILEGX_IMM16_X0_HW1_PCREL = 52; 2428 enum R_TILEGX_IMM16_X1_HW1_PCREL = 53; 2429 enum R_TILEGX_IMM16_X0_HW2_PCREL = 54; 2430 enum R_TILEGX_IMM16_X1_HW2_PCREL = 55; 2431 enum R_TILEGX_IMM16_X0_HW3_PCREL = 56; 2432 enum R_TILEGX_IMM16_X1_HW3_PCREL = 57; 2433 enum R_TILEGX_IMM16_X0_HW0_LAST_PCREL = 58; 2434 enum R_TILEGX_IMM16_X1_HW0_LAST_PCREL = 59; 2435 enum R_TILEGX_IMM16_X0_HW1_LAST_PCREL = 60; 2436 enum R_TILEGX_IMM16_X1_HW1_LAST_PCREL = 61; 2437 enum R_TILEGX_IMM16_X0_HW2_LAST_PCREL = 62; 2438 enum R_TILEGX_IMM16_X1_HW2_LAST_PCREL = 63; 2439 enum R_TILEGX_IMM16_X0_HW0_GOT = 64; 2440 enum R_TILEGX_IMM16_X1_HW0_GOT = 65; 2441 enum R_TILEGX_IMM16_X0_HW0_PLT_PCREL = 66; 2442 enum R_TILEGX_IMM16_X1_HW0_PLT_PCREL = 67; 2443 enum R_TILEGX_IMM16_X0_HW1_PLT_PCREL = 68; 2444 enum R_TILEGX_IMM16_X1_HW1_PLT_PCREL = 69; 2445 enum R_TILEGX_IMM16_X0_HW2_PLT_PCREL = 70; 2446 enum R_TILEGX_IMM16_X1_HW2_PLT_PCREL = 71; 2447 enum R_TILEGX_IMM16_X0_HW0_LAST_GOT = 72; 2448 enum R_TILEGX_IMM16_X1_HW0_LAST_GOT = 73; 2449 enum R_TILEGX_IMM16_X0_HW1_LAST_GOT = 74; 2450 enum R_TILEGX_IMM16_X1_HW1_LAST_GOT = 75; 2451 enum R_TILEGX_IMM16_X0_HW3_PLT_PCREL = 76; 2452 enum R_TILEGX_IMM16_X1_HW3_PLT_PCREL = 77; 2453 enum R_TILEGX_IMM16_X0_HW0_TLS_GD = 78; 2454 enum R_TILEGX_IMM16_X1_HW0_TLS_GD = 79; 2455 enum R_TILEGX_IMM16_X0_HW0_TLS_LE = 80; 2456 enum R_TILEGX_IMM16_X1_HW0_TLS_LE = 81; 2457 enum R_TILEGX_IMM16_X0_HW0_LAST_TLS_LE = 82; 2458 enum R_TILEGX_IMM16_X1_HW0_LAST_TLS_LE = 83; 2459 enum R_TILEGX_IMM16_X0_HW1_LAST_TLS_LE = 84; 2460 enum R_TILEGX_IMM16_X1_HW1_LAST_TLS_LE = 85; 2461 enum R_TILEGX_IMM16_X0_HW0_LAST_TLS_GD = 86; 2462 enum R_TILEGX_IMM16_X1_HW0_LAST_TLS_GD = 87; 2463 enum R_TILEGX_IMM16_X0_HW1_LAST_TLS_GD = 88; 2464 enum R_TILEGX_IMM16_X1_HW1_LAST_TLS_GD = 89; 2465 enum R_TILEGX_IMM16_X0_HW0_TLS_IE = 92; 2466 enum R_TILEGX_IMM16_X1_HW0_TLS_IE = 93; 2467 enum R_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL = 94; 2468 enum R_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL = 95; 2469 enum R_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL = 96; 2470 enum R_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL = 97; 2471 enum R_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL = 98; 2472 enum R_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL = 99; 2473 enum R_TILEGX_IMM16_X0_HW0_LAST_TLS_IE = 100; 2474 enum R_TILEGX_IMM16_X1_HW0_LAST_TLS_IE = 101; 2475 enum R_TILEGX_IMM16_X0_HW1_LAST_TLS_IE = 102; 2476 enum R_TILEGX_IMM16_X1_HW1_LAST_TLS_IE = 103; 2477 enum R_TILEGX_TLS_DTPMOD64 = 106; 2478 enum R_TILEGX_TLS_DTPOFF64 = 107; 2479 enum R_TILEGX_TLS_TPOFF64 = 108; 2480 enum R_TILEGX_TLS_DTPMOD32 = 109; 2481 enum R_TILEGX_TLS_DTPOFF32 = 110; 2482 enum R_TILEGX_TLS_TPOFF32 = 111; 2483 enum R_TILEGX_TLS_GD_CALL = 112; 2484 enum R_TILEGX_IMM8_X0_TLS_GD_ADD = 113; 2485 enum R_TILEGX_IMM8_X1_TLS_GD_ADD = 114; 2486 enum R_TILEGX_IMM8_Y0_TLS_GD_ADD = 115; 2487 enum R_TILEGX_IMM8_Y1_TLS_GD_ADD = 116; 2488 enum R_TILEGX_TLS_IE_LOAD = 117; 2489 enum R_TILEGX_IMM8_X0_TLS_ADD = 118; 2490 enum R_TILEGX_IMM8_X1_TLS_ADD = 119; 2491 enum R_TILEGX_IMM8_Y0_TLS_ADD = 120; 2492 enum R_TILEGX_IMM8_Y1_TLS_ADD = 121; 2493 2494 enum R_TILEGX_GNU_VTINHERIT = 128; 2495 enum R_TILEGX_GNU_VTENTRY = 129; 2496 2497 enum R_TILEGX_NUM = 130;