Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/gpl3/binutils/dist/gas/config Add a private now S_I...
details: https://anonhg.NetBSD.org/src/rev/c62b0cc9aa08
branches: trunk
changeset: 759359:c62b0cc9aa08
user: matt <matt%NetBSD.org@localhost>
date: Mon Dec 06 21:17:00 2010 +0000
description:
Add a private now S_IS_HIDDEN(symbol) so gas deal with hidden symbols
correctly.
diffstat:
external/gpl3/binutils/dist/gas/config/tc-vax.c | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diffs (37 lines):
diff -r baa8d6da64bf -r c62b0cc9aa08 external/gpl3/binutils/dist/gas/config/tc-vax.c
--- a/external/gpl3/binutils/dist/gas/config/tc-vax.c Mon Dec 06 21:16:53 2010 +0000
+++ b/external/gpl3/binutils/dist/gas/config/tc-vax.c Mon Dec 06 21:17:00 2010 +0000
@@ -266,6 +266,23 @@
#define min(a, b) ((a) < (b) ? (a) : (b))
+#ifdef OBJ_ELF
+static int
+S_IS_HIDDEN(symbolS *symbolP)
+{
+ asymbol *bfdsym;
+ elf_symbol_type *elfsym;
+
+ bfdsym = symbol_get_bfdsym (symbolP);
+ elfsym = elf_symbol_from (bfd_asymbol_bfd (bfdsym), bfdsym);
+
+ assert (elfsym);
+
+ return (elfsym->internal_elf_sym.st_other & 3) == STV_HIDDEN;
+}
+#endif /* OBJ_ELF */
+
+
void
md_number_to_chars (char con[], valueT value, int nbytes)
{
@@ -392,6 +409,9 @@
&& (PLT_symbol == NULL || fragP->fr_symbol != PLT_symbol)
&& fragP->fr_symbol != NULL
&& flag_want_pic
+#ifdef OBJ_ELF
+ && !S_IS_HIDDEN (fragP->fr_symbol)
+#endif
&& (!S_IS_DEFINED (fragP->fr_symbol)
|| S_IS_WEAK (fragP->fr_symbol)
|| S_IS_EXTERNAL (fragP->fr_symbol)))
Home |
Main Index |
Thread Index |
Old Index