]> Git Repo - binutils.git/blobdiff - gas/config/tc-ppc.h
bfd
[binutils.git] / gas / config / tc-ppc.h
index 08f0aeef3387bef48f939b6143ddbb5988ce0537..9706f6fa217249710fbc3d66f4ecb64e4b6f73fa 100644 (file)
@@ -129,26 +129,31 @@ struct ppc_tc_sy
 {
   /* We keep a few linked lists of symbols.  */
   symbolS *next;
+  /* The real name, if the symbol was renamed.  */
+  char *real_name;
   /* Non-zero if the symbol should be output.  The RS/6000 assembler
      only outputs symbols that are external or are mentioned in a
      .globl or .lglobl statement.  */
-  int output;
+  unsigned char output;
   /* The symbol class.  */
-  int symbol_class;
-  /* The real name, if the symbol was renamed.  */
-  char *real_name;
+  short symbol_class;
+  /* For a csect or common symbol, the alignment to use.  */
+  unsigned char align;
   /* For a csect symbol, the subsegment we are using.  This is zero
      for symbols that are not csects.  */
   subsegT subseg;
-  /* For a csect or common symbol, the alignment to use.  */
-  int align;
-  /* For a function symbol, a symbol whose value is the size.  The
-     field is NULL if there is no size.  */
-  symbolS *size;
   /* For a csect symbol, the last symbol which has been defined in
      this csect, or NULL if none have been defined so far.  For a .bs
      symbol, the referenced csect symbol.  */
   symbolS *within;
+  union
+  {
+    /* For a function symbol, a symbol whose value is the size.  The
+       field is NULL if there is no size.  */
+    symbolS *size;
+    /* For a dwarf symbol, the corresponding dwarf subsection.  */
+    struct dw_subsection *dw;
+  } u;
 };
 
 #define TC_SYMFIELD_TYPE struct ppc_tc_sy
@@ -193,12 +198,15 @@ extern void ppc_adjust_symtab (void);
 do {                                                           \
   if (SF_GET_GET_SEGMENT (dest))                               \
     S_SET_SEGMENT (dest, S_GET_SEGMENT (src));                 \
-  symbol_get_tc (dest)->size = symbol_get_tc (src)->size;      \
+  symbol_get_tc (dest)->u = symbol_get_tc (src)->u;            \
   symbol_get_tc (dest)->align = symbol_get_tc (src)->align;    \
   symbol_get_tc (dest)->symbol_class = symbol_get_tc (src)->symbol_class;      \
   symbol_get_tc (dest)->within = symbol_get_tc (src)->within;  \
 } while (0)
 
+extern void ppc_xcoff_end (void);
+#define md_end ppc_xcoff_end
+
 #endif /* OBJ_XCOFF */
 
 extern const char       ppc_symbol_chars[];
This page took 0.025781 seconds and 4 git commands to generate.