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)))

Reply via email to