summaryrefslogtreecommitdiff
path: root/bfd/elflink.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl@lucon.org>2005-09-07 05:01:16 +0000
committerH.J. Lu <hjl@lucon.org>2005-09-07 05:01:16 +0000
commit39bde418e7cc62f08d05edf9a3558da7db5423bd (patch)
tree0aeff3320e7989cf20cde362bb16e4193cedd608 /bfd/elflink.c
parent96d77d5024dec06d295b5d062850776efc127436 (diff)
downloadbinutils-redhat-39bde418e7cc62f08d05edf9a3558da7db5423bd.tar.gz
2005-09-06 H.J. Lu <hongjiu.lu@intel.com>
PR ld/1301 * elflink.c (_bfd_elf_merge_symbol): Don't check undefined symbol introduced by "ld -u" for TLS.
Diffstat (limited to 'bfd/elflink.c')
-rw-r--r--bfd/elflink.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/bfd/elflink.c b/bfd/elflink.c
index 4414f0df61..b74851698c 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -902,9 +902,11 @@ _bfd_elf_merge_symbol (bfd *abfd,
else
olddef = TRUE;
- /* Check TLS symbol. */
+ /* Check TLS symbol. We don't check undefined symbol introduced by
+ "ld -u". */
if ((ELF_ST_TYPE (sym->st_info) == STT_TLS || h->type == STT_TLS)
- && ELF_ST_TYPE (sym->st_info) != h->type)
+ && ELF_ST_TYPE (sym->st_info) != h->type
+ && oldbfd != NULL)
{
bfd *ntbfd, *tbfd;
bfd_boolean ntdef, tdef;