binutils-gdb/include/elf
Yufeng Zhang a6bb11b2df [AArch64, ILP32] 3/6 Support for ELF32 relocs and refactor reloc handling
bfd/

	* bfd-in2.h: Re-generated.
	* elfnn-aarch64.c (HOWTO64, HOWTO32): New define.
	(IS_AARCH64_TLS_RELOC): Change to be based on the
	bfd reloc enumerators.
	(IS_AARCH64_TLSDESC_RELOC): Likewise.
	(PG, PG_OFFSET): Cast literal to bfd_vma.
	(elf64_aarch64_howto_table): Removed.
	(elf64_aarch64_howto_dynrelocs): Removed.
	(elf64_aarch64_tls_howto_table): Removed.
	(elf64_aarch64_tlsdesc_howto_table): Removed.
	(elfNN_aarch64_howto_table): New table to host all howto entires..
	(R_AARCH64_*): Replaced by AARCH64_R (*) and AARCH64_R_STR (*).
	(elfNN_aarch64_bfd_reloc_from_howto): New function.
	(elfNN_aarch64_bfd_reloc_from_type): Ditto.
	(struct elf_aarch64_reloc_map): New.
	(elf_aarch64_reloc_map): New table.
	(elfNN_aarch64_howto_from_bfd_reloc): New function.
	(elfNN_aarch64_howto_from_type): Update to look up the new table
	elfNN_aarch64_howto_table.
	(struct elf64_aarch64_reloc_map): Remove.
	(elf64_aarch64_reloc_map): Remove.
	(elfNN_aarch64_reloc_type_lookup): Change to call
	elfNN_aarch64_howto_from_bfd_reloc.
	(elfNN_aarch64_reloc_name_lookup): Change to look up the new table
	elfNN_aarch64_howto_table.
	(aarch64_resolve_relocation): Refactor to switch on the bfd
	reloc enumerators.
	(bfd_elf_aarch64_put_addend): Likewise.
	(elfNN_aarch64_final_link_relocate): Likewise.
	(aarch64_tls_transition_without_check): Likewise.
	(aarch64_reloc_got_type): Likewise.
	(aarch64_can_relax_tls): Likewise.
	(aarch64_tls_transition): Likewise.
	(elfNN_aarch64_tls_relax): Likewise.
	(elfNN_aarch64_final_link_relocate): Likewise.
	(elfNN_aarch64_relocate_section): Likewise.
	(elfNN_aarch64_gc_sweep_hook): Likewise.
	(elfNN_aarch64_check_relocs): Likewise.
	(aarch64_tls_transition): Change to return a bfd reloc enumerator.
	* libbfd.h: Re-generated.
	* reloc.c: Re-order the AArch64 bfd reloc enumerators.
	(BFD_RELOC_AARCH64_RELOC_START)
	(BFD_RELOC_AARCH64_RELOC_END)
	(BFD_RELOC_AARCH64_LD_GOT_LO12_NC)
	(BFD_RELOC_AARCH64_LD32_GOT_LO12_NC)
	(BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC)
	(BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NC)
	(BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC)
	(BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC)
	(BFD_RELOC_AARCH64_IRELATIVE): New relocs.

gas/

	* config/tc-aarch64.c (reloc_table): Replace
	BFD_RELOC_AARCH64_LD64_GOT_LO12_NC with
	BFD_RELOC_AARCH64_LD_GOT_LO12_NC; likewise to
	BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC and
	BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC.
	(md_apply_fix): Handle BFD_RELOC_AARCH64_LD_GOT_LO12_NC,
	BFD_RELOC_AARCH64_LD32_GOT_LO12_NC,
	BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC,
	BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NC,
	BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC and
	BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC.
	(aarch64_force_relocation): Likewise.

gas/testsuite/

	* gas/aarch64/ilp32-basic.d: New file.
	* gas/aarch64/ilp32-basic.s: New file.

include/elf/

	* aarch64.h: Add ELF32 reloc codes and remove fake ELF64 ones.
	(R_AARCH64_IRELATIVE): New reloc.
2013-06-26 10:47:06 +00:00
..
aarch64.h [AArch64, ILP32] 3/6 Support for ELF32 relocs and refactor reloc handling 2013-06-26 10:47:06 +00:00
alpha.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
arc.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
arm.h bfd: 2012-10-30 12:44:58 +00:00
avr.h
bfin.h
ChangeLog [AArch64, ILP32] 3/6 Support for ELF32 relocs and refactor reloc handling 2013-06-26 10:47:06 +00:00
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:03 +00:00
common.h Add EM_INTEL205 to EM_INTEL209 2013-05-22 17:02:35 +00:00
cr16.h
cr16c.h
cris.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
crx.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
d10v.h
d30v.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
dlx.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
dwarf.h
epiphany.h bfd: 2011-10-27 14:27:16 +00:00
external.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
fr30.h
frv.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
h8.h * elf32-h8300 (h8_relax_section): Add new relaxation of mov 2013-03-21 16:08:07 +00:00
hppa.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
i370.h Implement generic SHF_EXCLUDE. 2010-05-18 03:31:07 +00:00
i386.h Define R_386_SIZE32/R_X86_64_SIZE32/R_X86_64_SIZE64 2013-01-16 20:31:57 +00:00
i860.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
i960.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
ia64.h 2011-06-09 Tristan Gingold <gingold@adacore.com> 2011-06-09 08:53:05 +00:00
internal.h include/elf/ 2011-03-14 15:55:04 +00:00
ip2k.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
iq2000.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
lm32.h
m32c.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
m32r.h
m68hc11.h * m68hc11.h: #define E_M68HC11_NO_BANK_WARNING 2012-08-02 20:08:54 +00:00
m68k.h
mcore.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
mep.h
metag.h * common.h: Fix case of "Meta". 2013-01-10 09:49:22 +00:00
microblaze.h Microblaze: Add support for handling TLS symbol suffixes and generating 2012-12-11 16:56:53 +00:00
mips.h bfd/ 2013-06-24 23:55:46 +00:00
mmix.h
mn10200.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
mn10300.h
moxie.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
msp430.h * archures.c: Add some more MSP430 machine numbers. 2013-05-02 21:06:15 +00:00
mt.h
nios2.h 2013-02-06 Sandra Loosemore <sandra@codesourcery.com> 2013-02-06 23:22:26 +00:00
openrisc.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
or32.h Implement generic SHF_EXCLUDE. 2010-05-18 03:31:07 +00:00
pj.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
ppc64.h
ppc.h
reloc-macros.h Fix spelling mistakes. 2011-06-02 13:43:24 +00:00
rl78.h [bfd] 2011-12-23 01:49:37 +00:00
rx.h 2012-11-09 Nick Clifton <nickc@redhat.com> 2012-11-09 17:00:44 +00:00
s390.h
score.h Add support for Score7 architecture. 2009-03-02 10:33:08 +00:00
sh.h 2010-05-21 Daniel Jacobowitz <dan@codesourcery.com> 2010-05-25 14:12:43 +00:00
sparc.h Add new ELF_SPARC_HWCAP_* defines for features found on SPARC-T4. 2012-04-27 18:00:52 +00:00
spu.h
tic6x-attrs.h
tic6x.h 2011-05-09 Paul Brook <paul@codesourcery.com> 2011-05-09 13:17:58 +00:00
tilegx.h Add support for constructing pc-relative addresses to the plt, by 2012-08-28 02:43:22 +00:00
tilepro.h Improve TLS support on TILE-Gx/TILEPro: 2012-02-25 22:24:21 +00:00
v850.h Add support for V850E3V5 architecture 2013-01-24 11:14:05 +00:00
vax.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
vxworks.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
x86-64.h Define R_386_SIZE32/R_X86_64_SIZE32/R_X86_64_SIZE64 2013-01-16 20:31:57 +00:00
xc16x.h
xgate.h
xstormy16.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
xtensa.h