From 5e99ba945a018343d4f96d5bbae14e213013fb17 Mon Sep 17 00:00:00 2001 From: Richard Earnshaw Date: Wed, 12 Sep 2012 16:25:49 +0000 Subject: [PATCH] 2012-09-11 Chris Schlumberger-Socha bfd/ * bfd-in2.h: Regenerated. * elf64-aarch64.c (elf64_aarch64_howto_table): Add R_AARCH64_GOT_LD_PREL19 reloc to HOWTO. (elf64_aarch64_reloc_map): Add reloc entry. (aarch64_resolve_relocation): Likewise. (bfd_elf_aarch64_put_addend): Likewise. (aarch64_reloc_got_type): Likewise. (elf64_aarch64_final_link_relocate): Likewise. (lf64_aarch64_check_relocs): Likewise. (elf64_aarch64_check_relocs): New case for R_AARCH64_ADR_PREL_LO21 reloc. * libbfd.h: Regenerated. * reloc.c (R_AARCH64_GOT_LD_PREL19): New reloc. gas/ * config/tc-aarch64.c (reloc_table): Add reloc to table entry. (parse_address_main): Add support for #::. (parse_operands): Check for unused reloc. (md_apply_fix): New case for reloc. (aarch64_force_relocation): Likewise. gas/testsuite * gas/aarch64/reloc-insn.d (BFD_RELOC_AARCH64_GOT_LD_PREL19): Add expected asm for new reloc test. * gas/aarch64/reloc-insn.s (BFD_RELOC_AARCH64_GOT_LD_PREL19): Add test for reloc. include/ * elf/aarch64.h (R_AARCH64_GOT_LD_PREL19): New reloc. ld/testsuite * ld-aarch64/aarch64-elf.exp: New reloc tests. * ld-aarch64/emit-relocs-309-low-bad.d: New file. Expected asm for test failure (lower bound overflow). * ld-aarch64/emit-relocs-309-low.d: New file. Expected asm for test success (lower bound). * ld-aarch64/emit-relocs-309-up-bad.d: New file. Expected asm for test failure (upper bound overflow). * ld-aarch64/emit-relocs-309-up.d: New file. Expected asm for test success (upper bound). * ld-aarch64/emit-relocs-309.s: New file. Asm for new reloc tests. --- include/ChangeLog | 4 ++++ include/elf/aarch64.h | 1 + 2 files changed, 5 insertions(+) diff --git a/include/ChangeLog b/include/ChangeLog index d4cc815d0..c0b69ad71 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2012-09-12 Chris Schlumberger-Socha + + * elf/aarch64.h (R_AARCH64_GOT_LD_PREL19): New reloc. + 2012-09-06 Cary Coutant * dwarf2.def: Edit comment. diff --git a/include/elf/aarch64.h b/include/elf/aarch64.h index 7787c681a..e3af4442a 100644 --- a/include/elf/aarch64.h +++ b/include/elf/aarch64.h @@ -153,6 +153,7 @@ RELOC_NUMBER (R_AARCH64_LDST64_ABS_LO12_NC, 286) /* LD/ST128: (S+A) & 0xff0 */ RELOC_NUMBER (R_AARCH64_LDST128_ABS_LO12_NC, 299) +RELOC_NUMBER (R_AARCH64_GOT_LD_PREL19, 309) RELOC_NUMBER (R_AARCH64_ADR_GOT_PAGE, 311) RELOC_NUMBER (R_AARCH64_LD64_GOT_LO12_NC, 312)