aboutsummaryrefslogtreecommitdiff
path: root/bfd/elflink.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2005-09-07 05:01:16 +0000
committerH.J. Lu <hjl.tools@gmail.com>2005-09-07 05:01:16 +0000
commit68f49ba3355656a7050c2e50ba1e3f359207c51c (patch)
tree6fe45c1a294745eaf6004310cdd9a423aeaae6c7 /bfd/elflink.c
parent2016dfccf9e58f56dd244634a89b308a816e91bf (diff)
downloadgdb-68f49ba3355656a7050c2e50ba1e3f359207c51c.zip
gdb-68f49ba3355656a7050c2e50ba1e3f359207c51c.tar.gz
gdb-68f49ba3355656a7050c2e50ba1e3f359207c51c.tar.bz2
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 4414f0d..b748516 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;