* symbols.c (S_GET_VALUE): Remove non-BFD assembler recursion guard.
authorAlan Modra <amodra@gmail.com>
Mon, 14 Nov 2005 23:11:30 +0000 (23:11 +0000)
committerAlan Modra <amodra@gmail.com>
Mon, 14 Nov 2005 23:11:30 +0000 (23:11 +0000)
gas/ChangeLog
gas/symbols.c

index 0896668..7256b0e 100644 (file)
@@ -1,3 +1,7 @@
+2005-11-15  Alan Modra  <amodra@bigpond.net.au>
+
+       * symbols.c (S_GET_VALUE): Remove non-BFD assembler recursion guard.
+
 2005-11-14  Jan Beulich  <jbeulich@novell.com>
 
        * config/tc-ia64.c (AR_FCR, AR_EFLAG, AR_CSD, AR_SSD, AR_CFLG,
index e8c110c..f781a35 100644 (file)
@@ -1782,20 +1782,11 @@ S_GET_VALUE (symbolS *s)
 
   if (s->sy_value.X_op != O_constant)
     {
-      static symbolS *recur;
-
-      /* FIXME: In non BFD assemblers, S_IS_DEFINED and S_IS_COMMON
-        may call S_GET_VALUE.  We use a static symbol to avoid the
-        immediate recursion.  */
-      if (recur == s)
-       return (valueT) s->sy_value.X_add_number;
-      recur = s;
       if (! s->sy_resolved
          || s->sy_value.X_op != O_symbol
          || (S_IS_DEFINED (s) && ! S_IS_COMMON (s)))
        as_bad (_("attempt to get value of unresolved symbol `%s'"),
                S_GET_NAME (s));
-      recur = NULL;
     }
   return (valueT) s->sy_value.X_add_number;
 }