[binutils-gdb] Help diagnose problems with the metag target when mixing static and shared binaries.
Nick Clifton
nickc@sourceware.org
Fri Nov 18 09:28:00 GMT 2016
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6ec49e7c0aeb6d98e379319b565aee2c89388615
commit 6ec49e7c0aeb6d98e379319b565aee2c89388615
Author: Nick Clifton <nickc@redhat.com>
Date: Fri Nov 18 09:27:41 2016 +0000
Help diagnose problems with the metag target when mixing static and shared binaries.
PR ld/20675
* elf32-metag.c (elf_metag_relocate_section): Replace abort with
an informative error message.
Diff:
---
bfd/ChangeLog | 6 ++++++
bfd/elf32-metag.c | 11 +++++++++--
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index fcc5b1c..b96b939 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2016-11-18 Nick Clifton <nickc@redhat.com>
+
+ PR ld/20675
+ * elf32-metag.c (elf_metag_relocate_section): Replace abort with
+ an informative error message.
+
2016-11-15 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
PR ld/20789
diff --git a/bfd/elf32-metag.c b/bfd/elf32-metag.c
index 1557a37..ac78324 100644
--- a/bfd/elf32-metag.c
+++ b/bfd/elf32-metag.c
@@ -1820,7 +1820,7 @@ elf_metag_relocate_section (bfd *output_bfd,
}
if (tls_type == GOT_UNKNOWN)
- abort();
+ abort ();
if ((off & 1) != 0)
off &= ~1;
@@ -1880,7 +1880,14 @@ elf_metag_relocate_section (bfd *output_bfd,
else
{
/* We don't support changing the TLS model. */
- abort ();
+ /* PR 20675 */
+ if (bfd_link_pic (info))
+ _bfd_error_handler (_("%B(%A): multiple TLS models are not supported"),
+ input_bfd, input_section, name);
+ else
+ _bfd_error_handler (_("%B(%A): shared library symbol %s encountered whilst performing a static link"),
+ input_bfd, input_section, name);
+ return FALSE;
}
cur_off += 8;
More information about the Binutils-cvs
mailing list