* elf32-sh.c (sh_elf_relocate_section): Allow R_SH_TLS_LE_32 for PIE.
(sh_elf_check_relocs): Likewise.
This commit is contained in:
parent
b24539b3f7
commit
b68593b98e
2 changed files with 7 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2011-06-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||||
|
||||
* elf32-sh.c (sh_elf_relocate_section): Allow R_SH_TLS_LE_32 for PIE.
|
||||
(sh_elf_check_relocs): Likewise.
|
||||
|
||||
2011-06-22 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* elf64-alpha.c (elf64_alpha_check_relocs): No dynamic reloc for
|
||||
|
|
|
@ -5516,7 +5516,7 @@ sh_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info,
|
|||
|
||||
check_segment[0] = check_segment[1] = -1;
|
||||
|
||||
if (! info->shared)
|
||||
if (! info->shared || info->pie)
|
||||
{
|
||||
relocation = tpoff (info, relocation);
|
||||
addend = rel->r_addend;
|
||||
|
@ -6614,7 +6614,7 @@ sh_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, asection *sec,
|
|||
break;
|
||||
|
||||
case R_SH_TLS_LE_32:
|
||||
if (info->shared)
|
||||
if (info->shared && !info->pie)
|
||||
{
|
||||
(*_bfd_error_handler)
|
||||
(_("%B: TLS local exec code cannot be linked into shared objects"),
|
||||
|
|
Loading…
Reference in a new issue