diff options
author | Will Newton <will.newton@linaro.org> | 2014-09-30 12:17:32 +0100 |
---|---|---|
committer | Will Newton <will.newton@linaro.org> | 2014-10-08 10:07:45 +0100 |
commit | 23664eacafac0548546d243bbc49bf5ab268a9c4 (patch) | |
tree | 7a3c5f36f69a654b4c07a57993ebe480d0bbb497 | |
parent | 3ba37e6c302904cb38b9572faa9b9c1bb176d782 (diff) | |
download | gdb-23664eacafac0548546d243bbc49bf5ab268a9c4.zip gdb-23664eacafac0548546d243bbc49bf5ab268a9c4.tar.gz gdb-23664eacafac0548546d243bbc49bf5ab268a9c4.tar.bz2 |
include/elf/aarch64.h: Add reloc numbers from ABI release 1.0
Add the relocation numbers defined in ABI release 1.0 but missing
from the current header. This will allow tools like objdump to dump
objects that use these relocations.
include/elf/ChangeLog:
2014-10-08 Will Newton <will.newton@linaro.org>
* aarch64.h: Sync up relocations with ABI release 1.0.
-rw-r--r-- | include/elf/ChangeLog | 4 | ||||
-rw-r--r-- | include/elf/aarch64.h | 82 |
2 files changed, 86 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index dd9bd9b..7e92493 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,7 @@ +2014-10-08 Will Newton <will.newton@linaro.org> + + * aarch64.h: Sync up relocations with ABI release 1.0. + 2014-09-16 Kuan-Lin Chen <kuanlinchentw@gmail.com> * nds32.h: Declare new relocations. diff --git a/include/elf/aarch64.h b/include/elf/aarch64.h index e2b71de..1842b0b 100644 --- a/include/elf/aarch64.h +++ b/include/elf/aarch64.h @@ -269,20 +269,87 @@ RELOC_NUMBER (R_AARCH64_LDST32_ABS_LO12_NC, 285) /* LD/ST64: (S+A) & 0xff8 */ RELOC_NUMBER (R_AARCH64_LDST64_ABS_LO12_NC, 286) +/* Group relocations to create a 16, 32, 48, or 64 bit PC-relative + offset inline. */ + +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G0, 287) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G0_NC, 288) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G1, 289) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G1_NC, 290) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G2, 291) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G2_NC, 292) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G3, 293) + /* LD/ST128: (S+A) & 0xff0 */ RELOC_NUMBER (R_AARCH64_LDST128_ABS_LO12_NC, 299) +/* Group relocations to create a 16, 32, 48, or 64 bit GOT-relative + offset inline. */ + +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G0, 300) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G0_NC, 301) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G1, 302) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G1_NC, 303) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G2, 304) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G2_NC, 305) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G3, 306) + +/* GOT-relative data relocations. */ + +RELOC_NUMBER (R_AARCH64_GOTREL64, 307) +RELOC_NUMBER (R_AARCH64_GOTREL32, 308) + +/* GOT-relative instruction relocations. */ + RELOC_NUMBER (R_AARCH64_GOT_LD_PREL19, 309) +RELOC_NUMBER (R_AARCH64_LD64_GOTOFF_LO15, 310) RELOC_NUMBER (R_AARCH64_ADR_GOT_PAGE, 311) RELOC_NUMBER (R_AARCH64_LD64_GOT_LO12_NC, 312) +RELOC_NUMBER (R_AARCH64_LD64_GOTPAGE_LO15, 313) +/* General Dynamic TLS relocations. */ + +RELOC_NUMBER (R_AARCH64_TLSGD_ADR_PREL21, 512) RELOC_NUMBER (R_AARCH64_TLSGD_ADR_PAGE21, 513) RELOC_NUMBER (R_AARCH64_TLSGD_ADD_LO12_NC, 514) +RELOC_NUMBER (R_AARCH64_TLSGD_MOVW_G1, 515) +RELOC_NUMBER (R_AARCH64_TLSGD_MOVW_G0_NC, 516) + +/* Local Dynamic TLS relocations. */ + +RELOC_NUMBER (R_AARCH64_TLSLD_ADR_PREL21, 517) +RELOC_NUMBER (R_AARCH64_TLSLD_ADR_PAGE21, 518) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_LO12_NC, 519) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_G1, 520) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_G0_NC, 521) +RELOC_NUMBER (R_AARCH64_TLSLD_LD_PREL19, 522) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G2, 523) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G1, 524) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC, 525) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G0, 526) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC, 527) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_HI12, 528) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_LO12, 529) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC, 530) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST8_DTPREL_LO12, 531) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, 532) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST16_DTPREL_LO12, 533) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, 534) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST32_DTPREL_LO12, 535) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, 536) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST64_DTPREL_LO12, 537) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, 538) + +/* Initial Exec TLS relocations. */ + RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G1, 539) RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC, 540) RELOC_NUMBER (R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21, 541) RELOC_NUMBER (R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC, 542) RELOC_NUMBER (R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, 543) + +/* Local Exec TLS relocations. */ + RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G2, 544) RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1, 545) RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1_NC, 546) @@ -291,6 +358,16 @@ RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G0_NC, 548) RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_HI12, 549) RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12, 550) RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12_NC, 551) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST8_TPREL_LO12, 552) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC, 553) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST16_TPREL_LO12, 554) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 555) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST32_TPREL_LO12, 556) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 557) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST64_TPREL_LO12, 558) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 559) + +/* TLS descriptor relocations. */ RELOC_NUMBER (R_AARCH64_TLSDESC_LD_PREL19, 560) RELOC_NUMBER (R_AARCH64_TLSDESC_ADR_PREL21, 561) @@ -303,6 +380,11 @@ RELOC_NUMBER (R_AARCH64_TLSDESC_LDR, 567) RELOC_NUMBER (R_AARCH64_TLSDESC_ADD, 568) RELOC_NUMBER (R_AARCH64_TLSDESC_CALL, 569) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST128_TPREL_LO12, 570) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC, 571) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST128_DTPREL_LO12, 572) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC, 573) + /* Dynamic relocations */ /* Copy symbol at runtime. */ |