1#------------------------------------------------------------------------------- 2# elftools: elf/enums.py 3# 4# Mappings of enum names to values 5# 6# Eli Bendersky (eliben@gmail.com) 7# This code is in the public domain 8#------------------------------------------------------------------------------- 9from ..construct import Pass 10 11 12# e_ident[EI_CLASS] in the ELF header 13ENUM_EI_CLASS = dict( 14 ELFCLASSNONE=0, 15 ELFCLASS32=1, 16 ELFCLASS64=2 17) 18 19# e_ident[EI_DATA] in the ELF header 20ENUM_EI_DATA = dict( 21 ELFDATANONE=0, 22 ELFDATA2LSB=1, 23 ELFDATA2MSB=2 24) 25 26# e_version in the ELF header 27ENUM_E_VERSION = dict( 28 EV_NONE=0, 29 EV_CURRENT=1, 30 _default_=Pass, 31) 32 33# e_ident[EI_OSABI] in the ELF header 34ENUM_EI_OSABI = dict( 35 ELFOSABI_SYSV=0, 36 ELFOSABI_HPUX=1, 37 ELFOSABI_NETBSD=2, 38 ELFOSABI_LINUX=3, 39 ELFOSABI_HURD=4, 40 ELFOSABI_SOLARIS=6, 41 ELFOSABI_AIX=7, 42 ELFOSABI_IRIX=8, 43 ELFOSABI_FREEBSD=9, 44 ELFOSABI_TRU64=10, 45 ELFOSABI_MODESTO=11, 46 ELFOSABI_OPENBSD=12, 47 ELFOSABI_OPENVMS=13, 48 ELFOSABI_NSK=14, 49 ELFOSABI_AROS=15, 50 ELFOSABI_ARM_AEABI=64, 51 ELFOSABI_ARM=97, 52 ELFOSABI_STANDALONE=255, 53 _default_=Pass, 54) 55 56# e_type in the ELF header 57ENUM_E_TYPE = dict( 58 ET_NONE=0, 59 ET_REL=1, 60 ET_EXEC=2, 61 ET_DYN=3, 62 ET_CORE=4, 63 ET_LOPROC=0xff00, 64 ET_HIPROC=0xffff, 65 _default_=Pass, 66) 67 68# e_machine in the ELF header 69ENUM_E_MACHINE = dict( 70 EM_NONE=0, 71 EM_M32=1, 72 EM_SPARC=2, 73 EM_386=3, 74 EM_68K=4, 75 EM_88K=5, 76 EM_860=7, 77 EM_MIPS=8, 78 EM_S370=9, 79 EM_MIPS_RS3_LE=10, 80 EM_PARISC=15, 81 EM_VPP500=17, 82 EM_SPARC32PLUS=18, 83 EM_960=19, 84 EM_PPC=20, 85 EM_PPC64=21, 86 EM_S390=22, 87 EM_V800=36, 88 EM_FR20=37, 89 EM_RH32=38, 90 EM_RCE=39, 91 EM_ARM=40, 92 EM_ALPHA=41, 93 EM_SH=42, 94 EM_SPARCV9=43, 95 EM_TRICORE=44, 96 EM_ARC=45, 97 EM_H8_300=46, 98 EM_H8_300H=47, 99 EM_H8S=48, 100 EM_H8_500=49, 101 EM_IA_64=50, 102 EM_MIPS_X=51, 103 EM_COLDFIRE=52, 104 EM_68HC12=53, 105 EM_MMA=54, 106 EM_PCP=55, 107 EM_NCPU=56, 108 EM_NDR1=57, 109 EM_STARCORE=58, 110 EM_ME16=59, 111 EM_ST100=60, 112 EM_TINYJ=61, 113 EM_X86_64=62, 114 EM_PDSP=63, 115 EM_PDP10=64, 116 EM_PDP11=65, 117 EM_FX66=66, 118 EM_ST9PLUS=67, 119 EM_ST7=68, 120 EM_68HC16=69, 121 EM_68HC11=70, 122 EM_68HC08=71, 123 EM_68HC05=72, 124 EM_SVX=73, 125 EM_ST19=74, 126 EM_VAX=75, 127 EM_CRIS=76, 128 EM_JAVELIN=77, 129 EM_FIREPATH=78, 130 EM_ZSP=79, 131 EM_MMIX=80, 132 EM_HUANY=81, 133 EM_PRISM=82, 134 EM_AVR=83, 135 EM_FR30=84, 136 EM_D10V=85, 137 EM_D30V=86, 138 EM_V850=87, 139 EM_M32R=88, 140 EM_MN10300=89, 141 EM_MN10200=90, 142 EM_PJ=91, 143 EM_OPENRISC=92, 144 EM_ARC_A5=93, 145 EM_XTENSA=94, 146 EM_VIDEOCORE=95, 147 EM_TMM_GPP=96, 148 EM_NS32K=97, 149 EM_TPC=98, 150 EM_SNP1K=99, 151 EM_ST200=100, 152 EM_IP2K=101, 153 EM_MAX=102, 154 EM_CR=103, 155 EM_F2MC16=104, 156 EM_MSP430=105, 157 EM_BLACKFIN=106, 158 EM_SE_C33=107, 159 EM_SEP=108, 160 EM_ARCA=109, 161 EM_UNICORE=110, 162 EM_L10M=180, 163 EM_AARCH64=183, 164 _default_=Pass, 165) 166 167# sh_type in the section header 168ENUM_SH_TYPE = dict( 169 SHT_NULL=0, 170 SHT_PROGBITS=1, 171 SHT_SYMTAB=2, 172 SHT_STRTAB=3, 173 SHT_RELA=4, 174 SHT_HASH=5, 175 SHT_DYNAMIC=6, 176 SHT_NOTE=7, 177 SHT_NOBITS=8, 178 SHT_REL=9, 179 SHT_SHLIB=10, 180 SHT_DYNSYM=11, 181 SHT_INIT_ARRAY=14, 182 SHT_FINI_ARRAY=15, 183 SHT_PREINIT_ARRAY=16, 184 SHT_GROUP=17, 185 SHT_SYMTAB_SHNDX=18, 186 SHT_NUM=19, 187 SHT_LOOS=0x60000000, 188 SHT_GNU_HASH=0x6ffffff6, 189 SHT_GNU_verdef=0x6ffffffd, # also SHT_SUNW_verdef 190 SHT_GNU_verneed=0x6ffffffe, # also SHT_SUNW_verneed 191 SHT_GNU_versym=0x6fffffff, # also SHT_SUNW_versym 192 SHT_LOPROC=0x70000000, 193 SHT_HIPROC=0x7fffffff, 194 SHT_LOUSER=0x80000000, 195 SHT_HIUSER=0xffffffff, 196 SHT_AMD64_UNWIND=0x70000001, 197 SHT_SUNW_LDYNSYM=0x6ffffff3, 198 SHT_SUNW_syminfo=0x6ffffffc, 199 SHT_ARM_EXIDX=0x70000001, 200 SHT_ARM_PREEMPTMAP=0x70000002, 201 SHT_ARM_ATTRIBUTES=0x70000003, 202 SHT_ARM_DEBUGOVERLAY=0x70000004, 203 _default_=Pass, 204) 205 206# p_type in the program header 207# some values scavenged from the ELF headers in binutils-2.21 208ENUM_P_TYPE = dict( 209 PT_NULL=0, 210 PT_LOAD=1, 211 PT_DYNAMIC=2, 212 PT_INTERP=3, 213 PT_NOTE=4, 214 PT_SHLIB=5, 215 PT_PHDR=6, 216 PT_TLS=7, 217 PT_LOPROC=0x70000000, 218 PT_HIPROC=0x7fffffff, 219 PT_GNU_EH_FRAME=0x6474e550, 220 PT_GNU_STACK=0x6474e551, 221 PT_GNU_RELRO=0x6474e552, 222 PT_ARM_ARCHEXT=0x70000000, 223 PT_ARM_EXIDX=0x70000001, 224 PT_ARM_UNWIND=0x70000001, 225 PT_AARCH64_ARCHEXT=0x70000000, 226 PT_AARCH64_UNWIND=0x70000001, 227 _default_=Pass, 228) 229 230# st_info bindings in the symbol header 231ENUM_ST_INFO_BIND = dict( 232 STB_LOCAL=0, 233 STB_GLOBAL=1, 234 STB_WEAK=2, 235 STB_NUM=3, 236 STB_LOOS=10, 237 STB_HIOS=12, 238 STB_LOPROC=13, 239 STB_HIPROC=15, 240 _default_=Pass, 241) 242 243# st_info type in the symbol header 244ENUM_ST_INFO_TYPE = dict( 245 STT_NOTYPE=0, 246 STT_OBJECT=1, 247 STT_FUNC=2, 248 STT_SECTION=3, 249 STT_FILE=4, 250 STT_COMMON=5, 251 STT_TLS=6, 252 STT_NUM=7, 253 STT_RELC=8, 254 STT_SRELC=9, 255 STT_LOOS=10, 256 STT_HIOS=12, 257 STT_LOPROC=13, 258 STT_HIPROC=15, 259 _default_=Pass, 260) 261 262# visibility from st_other 263ENUM_ST_VISIBILITY = dict( 264 STV_DEFAULT=0, 265 STV_INTERNAL=1, 266 STV_HIDDEN=2, 267 STV_PROTECTED=3, 268 STV_EXPORTED=4, 269 STV_SINGLETON=5, 270 STV_ELIMINATE=6, 271 _default_=Pass, 272) 273 274# st_shndx 275ENUM_ST_SHNDX = dict( 276 SHN_UNDEF=0, 277 SHN_ABS=0xfff1, 278 SHN_COMMON=0xfff2, 279 _default_=Pass, 280) 281 282# d_tag 283ENUM_D_TAG = dict( 284 DT_NULL=0, 285 DT_NEEDED=1, 286 DT_PLTRELSZ=2, 287 DT_PLTGOT=3, 288 DT_HASH=4, 289 DT_STRTAB=5, 290 DT_SYMTAB=6, 291 DT_RELA=7, 292 DT_RELASZ=8, 293 DT_RELAENT=9, 294 DT_STRSZ=10, 295 DT_SYMENT=11, 296 DT_INIT=12, 297 DT_FINI=13, 298 DT_SONAME=14, 299 DT_RPATH=15, 300 DT_SYMBOLIC=16, 301 DT_REL=17, 302 DT_RELSZ=18, 303 DT_RELENT=19, 304 DT_PLTREL=20, 305 DT_DEBUG=21, 306 DT_TEXTREL=22, 307 DT_JMPREL=23, 308 DT_BIND_NOW=24, 309 DT_INIT_ARRAY=25, 310 DT_FINI_ARRAY=26, 311 DT_INIT_ARRAYSZ=27, 312 DT_FINI_ARRAYSZ=28, 313 DT_RUNPATH=29, 314 DT_FLAGS=30, 315 DT_ENCODING=32, 316 DT_PREINIT_ARRAY=32, 317 DT_PREINIT_ARRAYSZ=33, 318 DT_NUM=34, 319 DT_LOOS=0x6000000d, 320 DT_SUNW_AUXILIARY=0x6000000d, 321 DT_SUNW_RTLDINF=0x6000000e, 322 DT_SUNW_FILTER=0x6000000f, 323 DT_SUNW_CAP=0x60000010, 324 DT_SUNW_SYMTAB=0x60000011, 325 DT_SUNW_SYMSZ=0x60000012, 326 DT_SUNW_ENCODING=0x60000013, 327 DT_SUNW_SORTENT=0x60000013, 328 DT_SUNW_SYMSORT=0x60000014, 329 DT_SUNW_SYMSORTSZ=0x60000015, 330 DT_SUNW_TLSSORT=0x60000016, 331 DT_SUNW_TLSSORTSZ=0x60000017, 332 DT_SUNW_CAPINFO=0x60000018, 333 DT_SUNW_STRPAD=0x60000019, 334 DT_SUNW_CAPCHAIN=0x6000001a, 335 DT_SUNW_LDMACH=0x6000001b, 336 DT_SUNW_CAPCHAINENT=0x6000001d, 337 DT_SUNW_CAPCHAINSZ=0x6000001f, 338 DT_HIOS=0x6ffff000, 339 DT_LOPROC=0x70000000, 340 DT_HIPROC=0x7fffffff, 341 DT_PROCNUM=0x35, 342 DT_VALRNGLO=0x6ffffd00, 343 DT_GNU_PRELINKED=0x6ffffdf5, 344 DT_GNU_CONFLICTSZ=0x6ffffdf6, 345 DT_GNU_LIBLISTSZ=0x6ffffdf7, 346 DT_CHECKSUM=0x6ffffdf8, 347 DT_PLTPADSZ=0x6ffffdf9, 348 DT_MOVEENT=0x6ffffdfa, 349 DT_MOVESZ=0x6ffffdfb, 350 DT_SYMINSZ=0x6ffffdfe, 351 DT_SYMINENT=0x6ffffdff, 352 DT_GNU_HASH=0x6ffffef5, 353 DT_TLSDESC_PLT=0x6ffffef6, 354 DT_TLSDESC_GOT=0x6ffffef7, 355 DT_GNU_CONFLICT=0x6ffffef8, 356 DT_GNU_LIBLIST=0x6ffffef9, 357 DT_CONFIG=0x6ffffefa, 358 DT_DEPAUDIT=0x6ffffefb, 359 DT_AUDIT=0x6ffffefc, 360 DT_PLTPAD=0x6ffffefd, 361 DT_MOVETAB=0x6ffffefe, 362 DT_SYMINFO=0x6ffffeff, 363 DT_VERSYM=0x6ffffff0, 364 DT_RELACOUNT=0x6ffffff9, 365 DT_RELCOUNT=0x6ffffffa, 366 DT_FLAGS_1=0x6ffffffb, 367 DT_VERDEF=0x6ffffffc, 368 DT_VERDEFNUM=0x6ffffffd, 369 DT_VERNEED=0x6ffffffe, 370 DT_VERNEEDNUM=0x6fffffff, 371 DT_AUXILIARY=0x7ffffffd, 372 DT_FILTER=0x7fffffff, 373 _default_=Pass, 374) 375 376ENUM_RELOC_TYPE_i386 = dict( 377 R_386_NONE=0, 378 R_386_32=1, 379 R_386_PC32=2, 380 R_386_GOT32=3, 381 R_386_PLT32=4, 382 R_386_COPY=5, 383 R_386_GLOB_DAT=6, 384 R_386_JUMP_SLOT=7, 385 R_386_RELATIVE=8, 386 R_386_GOTOFF=9, 387 R_386_GOTPC=10, 388 R_386_32PLT=11, 389 R_386_TLS_TPOFF=14, 390 R_386_TLS_IE=15, 391 R_386_TLS_GOTIE=16, 392 R_386_TLS_LE=17, 393 R_386_TLS_GD=18, 394 R_386_TLS_LDM=19, 395 R_386_16=20, 396 R_386_PC16=21, 397 R_386_8=22, 398 R_386_PC8=23, 399 R_386_TLS_GD_32=24, 400 R_386_TLS_GD_PUSH=25, 401 R_386_TLS_GD_CALL=26, 402 R_386_TLS_GD_POP=27, 403 R_386_TLS_LDM_32=28, 404 R_386_TLS_LDM_PUSH=29, 405 R_386_TLS_LDM_CALL=30, 406 R_386_TLS_LDM_POP=31, 407 R_386_TLS_LDO_32=32, 408 R_386_TLS_IE_32=33, 409 R_386_TLS_LE_32=34, 410 R_386_TLS_DTPMOD32=35, 411 R_386_TLS_DTPOFF32=36, 412 R_386_TLS_TPOFF32=37, 413 R_386_TLS_GOTDESC=39, 414 R_386_TLS_DESC_CALL=40, 415 R_386_TLS_DESC=41, 416 R_386_IRELATIVE=42, 417 R_386_USED_BY_INTEL_200=200, 418 R_386_GNU_VTINHERIT=250, 419 R_386_GNU_VTENTRY=251, 420 _default_=Pass, 421) 422 423ENUM_RELOC_TYPE_x64 = dict( 424 R_X86_64_NONE=0, 425 R_X86_64_64=1, 426 R_X86_64_PC32=2, 427 R_X86_64_GOT32=3, 428 R_X86_64_PLT32=4, 429 R_X86_64_COPY=5, 430 R_X86_64_GLOB_DAT=6, 431 R_X86_64_JUMP_SLOT=7, 432 R_X86_64_RELATIVE=8, 433 R_X86_64_GOTPCREL=9, 434 R_X86_64_32=10, 435 R_X86_64_32S=11, 436 R_X86_64_16=12, 437 R_X86_64_PC16=13, 438 R_X86_64_8=14, 439 R_X86_64_PC8=15, 440 R_X86_64_DTPMOD64=16, 441 R_X86_64_DTPOFF64=17, 442 R_X86_64_TPOFF64=18, 443 R_X86_64_TLSGD=19, 444 R_X86_64_TLSLD=20, 445 R_X86_64_DTPOFF32=21, 446 R_X86_64_GOTTPOFF=22, 447 R_X86_64_TPOFF32=23, 448 R_X86_64_PC64=24, 449 R_X86_64_GOTOFF64=25, 450 R_X86_64_GOTPC32=26, 451 R_X86_64_GOT64=27, 452 R_X86_64_GOTPCREL64=28, 453 R_X86_64_GOTPC64=29, 454 R_X86_64_GOTPLT64=30, 455 R_X86_64_PLTOFF64=31, 456 R_X86_64_GOTPC32_TLSDESC=34, 457 R_X86_64_TLSDESC_CALL=35, 458 R_X86_64_TLSDESC=36, 459 R_X86_64_IRELATIVE=37, 460 R_X86_64_GNU_VTINHERIT=250, 461 R_X86_64_GNU_VTENTRY=251, 462 _default_=Pass, 463) 464 465# Sunw Syminfo Bound To special values 466ENUM_SUNW_SYMINFO_BOUNDTO = dict( 467 SYMINFO_BT_SELF=0xffff, 468 SYMINFO_BT_PARENT=0xfffe, 469 SYMINFO_BT_NONE=0xfffd, 470 SYMINFO_BT_EXTERN=0xfffc, 471 _default_=Pass, 472) 473 474# Versym section, version dependency index 475ENUM_VERSYM = dict( 476 VER_NDX_LOCAL=0, 477 VER_NDX_GLOBAL=1, 478 VER_NDX_LORESERVE=0xff00, 479 VER_NDX_ELIMINATE=0xff01, 480 _default_=Pass, 481) 482# Sunw Syminfo Bound To special values 483ENUM_SUNW_SYMINFO_BOUNDTO = dict( 484 SYMINFO_BT_SELF=0xffff, 485 SYMINFO_BT_PARENT=0xfffe, 486 SYMINFO_BT_NONE=0xfffd, 487 SYMINFO_BT_EXTERN=0xfffc, 488 _default_=Pass, 489) 490 491ENUM_RELOC_TYPE_ARM = dict( 492 R_ARM_NONE=0, 493 R_ARM_PC24=1, 494 R_ARM_ABS32=2, 495 R_ARM_REL32=3, 496 R_ARM_LDR_PC_G0=4, 497 R_ARM_ABS16=5, 498 R_ARM_ABS12=6, 499 R_ARM_THM_ABS5=7, 500 R_ARM_ABS8=8, 501 R_ARM_SBREL32=9, 502 R_ARM_THM_CALL=10, 503 R_ARM_THM_PC8=11, 504 R_ARM_BREL_ADJ=12, 505 R_ARM_SWI24=13, 506 R_ARM_THM_SWI8=14, 507 R_ARM_XPC25=15, 508 R_ARM_THM_XPC22=16, 509 R_ARM_TLS_DTPMOD32=17, 510 R_ARM_TLS_DTPOFF32=18, 511 R_ARM_TLS_TPOFF32=19, 512 R_ARM_COPY=20, 513 R_ARM_GLOB_DAT=21, 514 R_ARM_JUMP_SLOT=22, 515 R_ARM_RELATIVE=23, 516 R_ARM_GOTOFF32=24, 517 R_ARM_BASE_PREL=25, 518 R_ARM_GOT_BREL=26, 519 R_ARM_PLT32=27, 520 R_ARM_CALL=28, 521 R_ARM_JUMP24=29, 522 R_ARM_THM_JUMP24=30, 523 R_ARM_BASE_ABS=31, 524 R_ARM_ALU_PCREL_7_0=32, 525 R_ARM_ALU_PCREL_15_8=33, 526 R_ARM_ALU_PCREL_23_15=34, 527 R_ARM_LDR_SBREL_11_0_NC=35, 528 R_ARM_ALU_SBREL_19_12_NC=36, 529 R_ARM_ALU_SBREL_27_20_CK=37, 530 R_ARM_TARGET1=38, 531 R_ARM_SBREL31=39, 532 R_ARM_V4BX=40, 533 R_ARM_TARGET2=41, 534 R_ARM_PREL31=42, 535 R_ARM_MOVW_ABS_NC=43, 536 R_ARM_MOVT_ABS=44, 537 R_ARM_MOVW_PREL_NC=45, 538 R_ARM_MOVT_PREL=46, 539 R_ARM_THM_MOVW_ABS_NC=47, 540 R_ARM_THM_MOVT_ABS=48, 541 R_ARM_THM_MOVW_PREL_NC=49, 542 R_ARM_THM_MOVT_PREL=50, 543 R_ARM_THM_JUMP19=51, 544 R_ARM_THM_JUMP6=52, 545 R_ARM_THM_ALU_PREL_11_0=53, 546 R_ARM_THM_PC12=54, 547 R_ARM_ABS32_NOI=55, 548 R_ARM_REL32_NOI=56, 549 R_ARM_ALU_PC_G0_NC=57, 550 R_ARM_ALU_PC_G0=58, 551 R_ARM_ALU_PC_G1_NC=59, 552 R_ARM_ALU_PC_G1=60, 553 R_ARM_ALU_PC_G2=61, 554 R_ARM_LDR_PC_G1=62, 555 R_ARM_LDR_PC_G2=63, 556 R_ARM_LDRS_PC_G0=64, 557 R_ARM_LDRS_PC_G1=65, 558 R_ARM_LDRS_PC_G2=66, 559 R_ARM_LDC_PC_G0=67, 560 R_ARM_LDC_PC_G1=68, 561 R_ARM_LDC_PC_G2=69, 562 R_ARM_ALU_SB_G0_NC=70, 563 R_ARM_ALU_SB_G0=71, 564 R_ARM_ALU_SB_G1_NC=72, 565 R_ARM_ALU_SB_G1=73, 566 R_ARM_ALU_SB_G2=74, 567 R_ARM_LDR_SB_G0=75, 568 R_ARM_LDR_SB_G1=76, 569 R_ARM_LDR_SB_G2=77, 570 R_ARM_LDRS_SB_G0=78, 571 R_ARM_LDRS_SB_G1=79, 572 R_ARM_LDRS_SB_G2=80, 573 R_ARM_LDC_SB_G0=81, 574 R_ARM_LDC_SB_G1=82, 575 R_ARM_LDC_SB_G2=83, 576 R_ARM_MOVW_BREL_NC=84, 577 R_ARM_MOVT_BREL=85, 578 R_ARM_MOVW_BREL=86, 579 R_ARM_THM_MOVW_BREL_NC=87, 580 R_ARM_THM_MOVT_BREL=88, 581 R_ARM_THM_MOVW_BREL=89, 582 R_ARM_PLT32_ABS=94, 583 R_ARM_GOT_ABS=95, 584 R_ARM_GOT_PREL=96, 585 R_ARM_GOT_BREL12=97, 586 R_ARM_GOTOFF12=98, 587 R_ARM_GOTRELAX=99, 588 R_ARM_GNU_VTENTRY=100, 589 R_ARM_GNU_VTINHERIT=101, 590 R_ARM_THM_JUMP11=102, 591 R_ARM_THM_JUMP8=103, 592 R_ARM_TLS_GD32=104, 593 R_ARM_TLS_LDM32=105, 594 R_ARM_TLS_LDO32=106, 595 R_ARM_TLS_IE32=107, 596 R_ARM_TLS_LE32=108, 597 R_ARM_TLS_LDO12=109, 598 R_ARM_TLS_LE12=110, 599 R_ARM_TLS_IE12GP=111, 600 R_ARM_PRIVATE_0=112, 601 R_ARM_PRIVATE_1=113, 602 R_ARM_PRIVATE_2=114, 603 R_ARM_PRIVATE_3=115, 604 R_ARM_PRIVATE_4=116, 605 R_ARM_PRIVATE_5=117, 606 R_ARM_PRIVATE_6=118, 607 R_ARM_PRIVATE_7=119, 608 R_ARM_PRIVATE_8=120, 609 R_ARM_PRIVATE_9=121, 610 R_ARM_PRIVATE_10=122, 611 R_ARM_PRIVATE_11=123, 612 R_ARM_PRIVATE_12=124, 613 R_ARM_PRIVATE_13=125, 614 R_ARM_PRIVATE_14=126, 615 R_ARM_PRIVATE_15=127, 616 R_ARM_ME_TOO=128, 617 R_ARM_THM_TLS_DESCSEQ16=129, 618 R_ARM_THM_TLS_DESCSEQ32=130, 619 R_ARM_THM_GOT_BREL12=131, 620 R_ARM_IRELATIVE=140, 621) 622 623ENUM_RELOC_TYPE_AARCH64 = dict( 624 R_AARCH64_NONE=256, 625 R_AARCH64_ABS64=257, 626 R_AARCH64_ABS32=258, 627 R_AARCH64_ABS16=259, 628 R_AARCH64_PREL64=260, 629 R_AARCH64_PREL32=261, 630 R_AARCH64_PREL16=262, 631 R_AARCH64_MOVW_UABS_G0=263, 632 R_AARCH64_MOVW_UABS_G0_NC=264, 633 R_AARCH64_MOVW_UABS_G1=265, 634 R_AARCH64_MOVW_UABS_G1_NC=266, 635 R_AARCH64_MOVW_UABS_G2=267, 636 R_AARCH64_MOVW_UABS_G2_NC=268, 637 R_AARCH64_MOVW_UABS_G3=269, 638 R_AARCH64_MOVW_SABS_G0=270, 639 R_AARCH64_MOVW_SABS_G1=271, 640 R_AARCH64_MOVW_SABS_G2=272, 641 R_AARCH64_LD_PREL_LO19=273, 642 R_AARCH64_ADR_PREL_LO21=274, 643 R_AARCH64_ADR_PREL_PG_HI21=275, 644 R_AARCH64_ADR_PREL_PG_HI21_NC=276, 645 R_AARCH64_ADD_ABS_LO12_NC=277, 646 R_AARCH64_LDST8_ABS_LO12_NC=278, 647 R_AARCH64_TSTBR14=279, 648 R_AARCH64_CONDBR19=280, 649 R_AARCH64_JUMP26=282, 650 R_AARCH64_CALL26=283, 651 R_AARCH64_LDST16_ABS_LO12_NC=284, 652 R_AARCH64_LDST32_ABS_LO12_NC=285, 653 R_AARCH64_LDST64_ABS_LO12_NC=286, 654 R_AARCH64_MOVW_PREL_G0=287, 655 R_AARCH64_MOVW_PREL_G0_NC=288, 656 R_AARCH64_MOVW_PREL_G1=289, 657 R_AARCH64_MOVW_PREL_G1_NC=290, 658 R_AARCH64_MOVW_PREL_G2=291, 659 R_AARCH64_MOVW_PREL_G2_NC=292, 660 R_AARCH64_MOVW_PREL_G3=293, 661 R_AARCH64_MOVW_GOTOFF_G0=300, 662 R_AARCH64_MOVW_GOTOFF_G0_NC=301, 663 R_AARCH64_MOVW_GOTOFF_G1=302, 664 R_AARCH64_MOVW_GOTOFF_G1_NC=303, 665 R_AARCH64_MOVW_GOTOFF_G2=304, 666 R_AARCH64_MOVW_GOTOFF_G2_NC=305, 667 R_AARCH64_MOVW_GOTOFF_G3=306, 668 R_AARCH64_GOTREL64=307, 669 R_AARCH64_GOTREL32=308, 670 R_AARCH64_GOT_LD_PREL19=309, 671 R_AARCH64_LD64_GOTOFF_LO15=310, 672 R_AARCH64_ADR_GOT_PAGE=311, 673 R_AARCH64_LD64_GOT_LO12_NC=312, 674 R_AARCH64_TLSGD_ADR_PREL21=512, 675 R_AARCH64_TLSGD_ADR_PAGE21=513, 676 R_AARCH64_TLSGD_ADD_LO12_NC=514, 677 R_AARCH64_TLSGD_MOVW_G1=515, 678 R_AARCH64_TLSGD_MOVW_G0_NC=516, 679 R_AARCH64_TLSLD_ADR_PREL21=517, 680 R_AARCH64_TLSLD_ADR_PAGE21=518, 681 R_AARCH64_TLSLD_ADD_LO12_NC=519, 682 R_AARCH64_TLSLD_MOVW_G1=520, 683 R_AARCH64_TLSLD_MOVW_G0_NC=521, 684 R_AARCH64_TLSLD_LD_PREL19=522, 685 R_AARCH64_TLSLD_MOVW_DTPREL_G2=523, 686 R_AARCH64_TLSLD_MOVW_DTPREL_G1=524, 687 R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC=525, 688 R_AARCH64_TLSLD_MOVW_DTPREL_G0=526, 689 R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC=527, 690 R_AARCH64_TLSLD_ADD_DTPREL_HI12=528, 691 R_AARCH64_TLSLD_ADD_DTPREL_LO12=529, 692 R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC=530, 693 R_AARCH64_TLSLD_LDST8_DTPREL_LO12=531, 694 R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC=532, 695 R_AARCH64_TLSLD_LDST16_DTPREL_LO12=533, 696 R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC=534, 697 R_AARCH64_TLSLD_LDST32_DTPREL_LO12=535, 698 R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC=536, 699 R_AARCH64_TLSLD_LDST64_DTPREL_LO12=537, 700 R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC=538, 701 R_AARCH64_TLSIE_MOVW_GOTTPREL_G1=539, 702 R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC=540, 703 R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21=541, 704 R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC=542, 705 R_AARCH64_TLSIE_LD_GOTTPREL_PREL19=543, 706 R_AARCH64_TLSLE_MOVW_TPREL_G2=544, 707 R_AARCH64_TLSLE_MOVW_TPREL_G1=545, 708 R_AARCH64_TLSLE_MOVW_TPREL_G1_NC=546, 709 R_AARCH64_TLSLE_MOVW_TPREL_G0=547, 710 R_AARCH64_TLSLE_MOVW_TPREL_G0_NC=548, 711 R_AARCH64_TLSLE_ADD_TPREL_HI12=549, 712 R_AARCH64_TLSLE_ADD_TPREL_LO12=550, 713 R_AARCH64_TLSLE_ADD_TPREL_LO12_NC=551, 714 R_AARCH64_TLSLE_LDST8_TPREL_LO12=552, 715 R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC=553, 716 R_AARCH64_TLSLE_LDST16_TPREL_LO12=554, 717 R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC=555, 718 R_AARCH64_TLSLE_LDST32_TPREL_LO12=556, 719 R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC=557, 720 R_AARCH64_TLSLE_LDST64_TPREL_LO12=558, 721 R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC=559, 722 R_AARCH64_COPY=1024, 723 R_AARCH64_GLOB_DAT=1025, 724 R_AARCH64_JUMP_SLOT=1026, 725 R_AARCH64_RELATIVE=1027, 726 R_AARCH64_TLS_DTPREL64=1028, 727 R_AARCH64_TLS_DTPMOD64=1029, 728 R_AARCH64_TLS_TPREL64=1030, 729 R_AARCH64_TLS_DTPREL32=1031, 730 R_AARCH64_TLS_DTPMOD32=1032, 731 R_AARCH64_TLS_TPREL32=1033, 732) 733