PR 10549: MIPS/LD: Handle OSABI setting for STB_GNU_UNIQUE

Add missing OSABI handling for MIPS/LD, complementing:

commit f64b2e8d60
Author: Nick Clifton <nickc@redhat.com>
Date:   Mon Apr 11 08:13:22 2011 +0000

Adjust test coverage accordingly.

	bfd/
	PR 10549
	* elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle
	STB_GNU_UNIQUE.

	ld/
	PR 10549
	* testsuite/ld-unique/unique.exp: Also run for `mips*-*-*'.
This commit is contained in:
Maciej W. Rozycki 2016-05-03 23:47:55 +01:00
parent 99d1b26821
commit 6d6a648c07
4 changed files with 18 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2016-05-03 Maciej W. Rozycki <macro@imgtec.com>
PR 10549
* elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle
STB_GNU_UNIQUE.
2016-05-03 Jiong Wang <jiong.wang@arm.com>
* bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype.

View File

@ -7526,6 +7526,11 @@ _bfd_mips_elf_add_symbol_hook (bfd *abfd, struct bfd_link_info *info,
mips_elf_hash_table (info)->rld_symbol = h;
}
if (ELF_ST_BIND (sym->st_info) == STB_GNU_UNIQUE
&& (abfd->flags & DYNAMIC) == 0
&& bfd_get_flavour (info->output_bfd) == bfd_target_elf_flavour)
elf_tdata (info->output_bfd)->has_gnu_symbols |= elf_gnu_symbol_unique;
/* If this is a mips16 text symbol, add 1 to the value to make it
odd. This will cause something like .word SYM to come up with
the right value when it is loaded into the PC. */

View File

@ -1,3 +1,8 @@
2016-05-03 Maciej W. Rozycki <macro@imgtec.com>
PR 10549
* testsuite/ld-unique/unique.exp: Also run for `mips*-*-*'.
2016-05-03 Jiong Wang <jiong.wang@arm.com>
* emultempl/aarch64elf.em (--no-apply-dynamic-relocs): New option.

View File

@ -25,10 +25,11 @@
# STB_GNU_UNIQUE support has only been implemented for the ix86, x86_64,
# arm, powerpc, and sparc so far.
# arm, mips, powerpc, and sparc so far.
if {!(([istarget "i?86-*-*"]
|| [istarget "x86_64-*-*"]
|| [istarget "arm*-*-*"]
|| [istarget "mips*-*-*"]
|| [istarget "powerpc*-*-*"]
|| [istarget "sparc*-*-*"])
&& ([istarget "*-*-elf*"]