Fix gdbserver/MI testing regression
[deliverable/binutils-gdb.git] / gas / subsegs.h
index 23ab4f9cf48e34ab61b2705708adba2a675e425f..9a208e2b1421103af2ff379d851e8f5c12957b9b 100644 (file)
@@ -1,12 +1,11 @@
 /* subsegs.h -> subsegs.c
 /* subsegs.h -> subsegs.c
-   Copyright 1987, 1992, 1993, 1994, 1995, 1996, 1998, 2000, 2003, 2005
-   Free Software Foundation, Inc.
+   Copyright (C) 1987-2016 Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 
    GAS is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
    This file is part of GAS, the GNU Assembler.
 
    GAS is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
+   the Free Software Foundation; either version 3, or (at your option)
    any later version.
 
    GAS is distributed in the hope that it will be useful,
    any later version.
 
    GAS is distributed in the hope that it will be useful,
 
 #include "obstack.h"
 
 
 #include "obstack.h"
 
+struct frch_cfi_data;
+
 struct frchain                 /* control building of a frag chain */
 {                              /* FRCH = FRagment CHain control */
   struct frag *frch_root;      /* 1st struct frag in chain, or NULL */
   struct frag *frch_last;      /* last struct frag in chain, or NULL */
   struct frchain *frch_next;   /* next in chain of struct frchain-s */
 struct frchain                 /* control building of a frag chain */
 {                              /* FRCH = FRagment CHain control */
   struct frag *frch_root;      /* 1st struct frag in chain, or NULL */
   struct frag *frch_last;      /* last struct frag in chain, or NULL */
   struct frchain *frch_next;   /* next in chain of struct frchain-s */
-  segT frch_seg;               /* SEG_TEXT or SEG_DATA.  */
   subsegT frch_subseg;         /* subsegment number of this chain */
   fixS *fix_root;              /* Root of fixups for this subsegment.  */
   fixS *fix_tail;              /* Last fixup for this subsegment.  */
   struct obstack frch_obstack; /* for objects in this frag chain */
   fragS *frch_frag_now;                /* frag_now for this subsegment */
   subsegT frch_subseg;         /* subsegment number of this chain */
   fixS *fix_root;              /* Root of fixups for this subsegment.  */
   fixS *fix_tail;              /* Last fixup for this subsegment.  */
   struct obstack frch_obstack; /* for objects in this frag chain */
   fragS *frch_frag_now;                /* frag_now for this subsegment */
+  struct frch_cfi_data *frch_cfi_data;
 };
 
 typedef struct frchain frchainS;
 
 };
 
 typedef struct frchain frchainS;
 
-/* All subsegments' chains hang off here.  NULL means no frchains yet.  */
-extern frchainS *frchain_root;
-
 /* Frchain we are assembling into now.  That is, the current segment's
    frag chain, even if it contains no (complete) frags.  */
 extern frchainS *frchain_now;
 /* Frchain we are assembling into now.  That is, the current segment's
    frag chain, even if it contains no (complete) frags.  */
 extern frchainS *frchain_now;
@@ -92,6 +90,9 @@ typedef struct segment_info_struct {
      this section.  sym->bsym and bfd_section->symbol should be the same.  */
   symbolS *sym;
 
      this section.  sym->bsym and bfd_section->symbol should be the same.  */
   symbolS *sym;
 
+  /* Used by dwarf2dbg.c for this section's line table entries.  */
+  void *dwarf2_line_seg;
+
   union {
     /* Current size of section holding stabs strings.  */
     unsigned long stab_string_size;
   union {
     /* Current size of section holding stabs strings.  */
     unsigned long stab_string_size;
@@ -109,7 +110,10 @@ typedef struct segment_info_struct {
 #endif
 } segment_info_type;
 
 #endif
 } segment_info_type;
 
-extern segment_info_type *seg_info (segT);
+
+#define seg_info(sec) \
+  ((segment_info_type *) bfd_get_section_userdata (stdoutput, sec))
+
 extern symbolS *section_symbol (segT);
 
 extern void subsegs_print_statistics (FILE *);
 extern symbolS *section_symbol (segT);
 
 extern void subsegs_print_statistics (FILE *);
This page took 0.023758 seconds and 4 git commands to generate.