newlib/include
Yufeng Zhang bce06a5f2f [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
..
aout Add copyright notices 2012-12-17 16:56:03 +00:00
cgen Add copyright notices 2012-12-10 12:48:00 +00:00
coff include/coff/ 2013-02-04 05:25:41 +00:00
elf [AArch64, ILP32] 3/6 Support for ELF32 relocs and refactor reloc handling 2013-06-26 10:47:06 +00:00
gdb gdb: 2013-03-15 17:53:41 +00:00
mach-o Add copyright notices 2012-12-10 12:48:00 +00:00
nlm Add copyright notices 2012-12-10 12:48:00 +00:00
opcode include/opcode/ 2013-06-26 07:04:57 +00:00
som Add copyright notices 2012-12-10 12:48:00 +00:00
vms Add copyright notices 2012-12-10 12:48:00 +00:00
COPYING
COPYING3 * COPYING3: New file. Contains version 3 of the GNU General Public License. 2007-07-17 13:50:23 +00:00
ChangeLog gas/ 2013-06-08 10:22:55 +00:00
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:00 +00:00
MAINTAINERS Add copyright notices 2012-12-17 16:56:03 +00:00
alloca-conf.h Add copyright notices 2012-12-17 16:56:03 +00:00
ansidecl.h merge from gcc 2012-12-18 17:41:27 +00:00
bfdlink.h include/ 2013-02-18 23:50:26 +00:00
binary-io.h * binary-io.h: New file, imported from gnulib, but don't 2008-08-25 04:36:03 +00:00
bout.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
demangle.h merge from gcc 2013-04-03 18:21:40 +00:00
dis-asm.h 2013-02-06 Sandra Loosemore <sandra@codesourcery.com> 2013-02-06 23:22:18 +00:00
dwarf2.def merge from gcc 2012-11-11 22:37:19 +00:00
dwarf2.h Restore patch lost in last merge from GCC. 2013-03-01 23:40:38 +00:00
dyn-string.h merge from gcc 2009-06-01 19:40:32 +00:00
fibheap.h merge from gcc 2009-06-01 19:40:32 +00:00
filenames.h include/ 2012-07-13 23:39:46 +00:00
floatformat.h merge from gcc 2011-01-03 21:05:50 +00:00
fnmatch.h
fopen-bin.h Add copyright notices 2012-12-17 16:56:03 +00:00
fopen-same.h Add copyright notices 2012-12-17 16:56:03 +00:00
fopen-vms.h Add copyright notices 2012-12-17 16:56:03 +00:00
gdbm.h
getopt.h
hashtab.h merge from gcc 2010-06-10 18:30:17 +00:00
hp-symtab.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
ieee.h
leb128.h * leb128.h: #include stdint.h, inttypes.h. 2012-05-24 01:18:15 +00:00
libiberty.h merge from gcc 2011-09-28 20:01:37 +00:00
lto-symtab.h merge from gcc 2009-10-07 02:57:27 +00:00
md5.h PR other/54620 2013-01-30 16:52:35 +00:00
oasys.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
objalloc.h merge from gcc 2012-10-10 03:11:22 +00:00
obstack.h * obstack.h [!GNUC] (obstack_free): Avoid cast to int. 2011-10-22 01:35:29 +00:00
os9k.h
partition.h
plugin-api.h This patch assigns explicit integers to enum values corresponding 2013-02-11 19:36:56 +00:00
progress.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
safe-ctype.h * safe-ctype.h: Add #include of ctype.h before redefining 2008-07-07 17:09:31 +00:00
sha1.h PR other/54620 2013-01-30 16:52:35 +00:00
simple-object.h merge from gcc 2010-11-17 02:03:39 +00:00
sort.h
splay-tree.h merge from gcc 2012-04-10 17:07:28 +00:00
symcat.h * symcat.h (CONCAT5, CONCAT6, XCONCAT5, XCONCAT6): Define. 2010-03-23 15:58:51 +00:00
timeval-utils.h merge from gcc 2011-09-28 20:01:37 +00:00
xregex.h merge from gcc 2011-07-25 17:11:44 +00:00
xregex2.h
xtensa-config.h merge from gcc 2011-01-03 21:05:50 +00:00
xtensa-isa-internal.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
xtensa-isa.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00