* elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic

relocations when LE conversion happens on the IE tls symbol.
This commit is contained in:
Kaz Kojima 2012-04-17 21:58:51 +00:00
parent 58d5e2c3ff
commit 87458ed222
2 changed files with 8 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2012-04-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
relocations when LE conversion happens on the IE tls symbol.
2012-04-17 Roland McGrath <mcgrathr@google.com>
* elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding

View File

@ -3104,6 +3104,9 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
&& (got_type == GOT_NORMAL || got_type == GOT_FUNCDESC))
htab->srofixup->size += 4;
}
/* No dynamic relocations required when IE->LE conversion happens. */
else if (got_type == GOT_TLS_IE && !h->def_dynamic && !info->shared)
;
/* R_SH_TLS_IE_32 needs one dynamic relocation if dynamic,
R_SH_TLS_GD needs one if local symbol and two if global. */
else if ((got_type == GOT_TLS_GD && h->dynindx == -1)