Module Name: src
Committed By: matt
Date: Mon Dec 6 21:17:01 UTC 2010
Modified Files:
src/external/gpl3/binutils/dist/gas/config: tc-vax.c
Log Message:
Add a private now S_IS_HIDDEN(symbol) so gas deal with hidden symbols
correctly.
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/external/gpl3/binutils/dist/gas/config/tc-vax.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/gpl3/binutils/dist/gas/config/tc-vax.c
diff -u src/external/gpl3/binutils/dist/gas/config/tc-vax.c:1.2 src/external/gpl3/binutils/dist/gas/config/tc-vax.c:1.3
--- src/external/gpl3/binutils/dist/gas/config/tc-vax.c:1.2 Wed Aug 19 07:19:31 2009
+++ src/external/gpl3/binutils/dist/gas/config/tc-vax.c Mon Dec 6 21:17:00 2010
@@ -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)))