diff options
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elflink.c | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 43668d5..4f4ae5a 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +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. + 2005-09-02 Paul Brook <paul@codesourcery.com> * libbdf.h: Regenerate. 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; |