daily update
[deliverable/binutils-gdb.git] / gas / struc-symbol.h
index 75735661bf2c01b22ebcf064b9ad4e59cf3d439d..0b2d52064998e6d399d91cbfad142960a71892b0 100644 (file)
@@ -1,5 +1,6 @@
 /* struct_symbol.h - Internal symbol structure
-   Copyright (C) 1987, 92, 93, 94, 95, 98, 1999 Free Software Foundation, Inc.
+   Copyright 1987, 1992, 1993, 1994, 1995, 1998, 1999, 2000, 2001, 2005
+   Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 
@@ -15,8 +16,8 @@
 
    You should have received a copy of the GNU General Public License
    along with GAS; see the file COPYING.  If not, write to the Free
-   Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-   02111-1307, USA.  */
+   Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
+   02110-1301, USA.  */
 
 #ifndef __struc_symbol_h__
 #define __struc_symbol_h__
 
 struct symbol
 {
-#ifdef BFD_ASSEMBLER
   /* BFD symbol */
   asymbol *bsym;
-#else
-  /* The (4-origin) position of sy_name in the symbol table of the object
-     file.  This will be 0 for (nameless) .stabd symbols.
-
-     Not used until write_object_file() time. */
-  unsigned long sy_name_offset;
-
-  /* What we write in .o file (if permitted).  */
-  obj_symbol_type sy_symbol;
-
-  /* The 24 bit symbol number.  Symbol numbers start at 0 and are unsigned. */
-  long sy_number;
-#endif
 
   /* The value of the symbol.  */
   expressionS sy_value;
 
   /* Forwards and (optionally) backwards chain pointers.  */
   struct symbol *sy_next;
-#ifdef SYMBOLS_NEED_BACKPOINTERS
   struct symbol *sy_previous;
-#endif /* SYMBOLS_NEED_BACKPOINTERS */
 
   /* Pointer to the frag this symbol is attached to, if any.
      Otherwise, NULL.  */
@@ -69,7 +54,7 @@ struct symbol
      are local and would otherwise not be.  */
   unsigned int sy_used_in_reloc : 1;
 
-  /* Whether the symbol is used as an operand or in an expression.  
+  /* Whether the symbol is used as an operand or in an expression.
      NOTE:  Not all the backends keep this information accurate;
      backends which use this bit are responsible for setting it when
      a symbol is used in backend routines.  */
@@ -88,9 +73,11 @@ struct symbol
 #ifdef TC_SYMFIELD_TYPE
   TC_SYMFIELD_TYPE sy_tc;
 #endif
-};
 
-#ifdef BFD_ASSEMBLER
+#ifdef TARGET_SYMBOL_FIELDS
+  TARGET_SYMBOL_FIELDS
+#endif
+};
 
 /* A pointer in the symbol may point to either a complete symbol
    (struct symbol above) or to a local symbol (struct local_symbol
@@ -111,14 +98,14 @@ struct local_symbol
 
   /* The symbol section.  This also serves as a flag.  If this is
      reg_section, then this symbol has been converted into a regular
-     symbol, and sy_sym points to it.  */
+     symbol, and lsy_sym points to it.  */
   segT lsy_section;
 
   /* The symbol name.  */
   const char *lsy_name;
 
   /* The symbol frag or the real symbol, depending upon the value in
-     sy_section.  If the symbol has been fully resolved, lsy_frag is
+     lsy_section.  If the symbol has been fully resolved, lsy_frag is
      set to NULL.  */
   union
   {
@@ -126,8 +113,12 @@ struct local_symbol
     symbolS *lsy_sym;
   } u;
 
-  /* The offset within the frag.  */
-  valueT lsy_offset;
+  /* The value of the symbol.  */
+  valueT lsy_value;
+
+#ifdef TC_LOCAL_SYMFIELD_TYPE
+  TC_LOCAL_SYMFIELD_TYPE lsy_tc;
+#endif
 };
 
 #define local_symbol_converted_p(l) ((l)->lsy_section == reg_section)
@@ -139,8 +130,4 @@ struct local_symbol
 #define local_symbol_get_real_symbol(l) ((l)->u.lsy_sym)
 #define local_symbol_set_real_symbol(l, s) ((l)->u.lsy_sym = (s))
 
-#endif /* BFD_ASSEMBLER */
-
 #endif /* __struc_symbol_h__ */
-
-/* end of struc-symbol.h */
This page took 0.024542 seconds and 4 git commands to generate.