* elf64-ppc.c (ppc_build_one_stub): Don't build glink stubs here.
[deliverable/binutils-gdb.git] / bfd / libieee.h
index 539d1742351b94de06ae319b07e99422a15cf221..c48566c97f7035b47797411c75e22766b6b5a0bc 100644 (file)
@@ -1,9 +1,35 @@
+/* IEEE-695 object file formats:  definitions internal to BFD.
+   Copyright 1990, 1991, 1992, 1994, 1996, 2001
+   Free Software Foundation, Inc.
+   Written by Cygnus Support.  Mostly Steve Chamberlain's fault.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program 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 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+
 typedef struct {
   unsigned int index:24;
   char letter;
 } ieee_symbol_index_type;
 
-typedef struct ieee_symbol 
+typedef struct ct {
+  bfd *this;
+  struct ct *next;
+} bfd_chain_type;
+
+typedef struct ieee_symbol
 {
   asymbol symbol;
   struct ieee_symbol *next;
@@ -35,45 +61,57 @@ typedef struct ieee_per_section
 } ieee_per_section_type;
 
 #define ieee_per_section(x) ((ieee_per_section_type *)((x)->used_by_bfd))
-#define NSECTIONS 10
 
-  
+typedef struct {
+  unsigned char *input_p;
+  unsigned char *first_byte;
+  unsigned char *last_byte;
+  bfd *abfd;
+} common_header_type ;
 
-typedef struct 
+typedef struct ieee_data_struct
 {
+  common_header_type h;
   boolean read_symbols;
-  boolean read_data;   
-  unsigned  char *input_p;
-  unsigned char *first_byte;
+  boolean read_data;
   file_ptr output_cursor;
   /* Map of section indexes to section ptrs */
-  asection * section_table[NSECTIONS];
+  asection **section_table;
+  unsigned int section_table_size;
   ieee_address_descriptor_type ad;
   ieee_module_begin_type mb;
   ieee_w_variable_type w;
-  
+
   unsigned int section_count;
-  
+
   unsigned int map_idx;
   /* List of GLOBAL EXPORT symbols */
   ieee_symbol_type *external_symbols;
   /* List of UNDEFINED symbols */
   ieee_symbol_type *external_reference;
-  
+
   /* When the symbols have been canonicalized, they are in a
     * special order, we remember various bases here.. */
   unsigned int external_symbol_max_index;
   unsigned int external_symbol_min_index;
   unsigned int external_symbol_count;
   int external_symbol_base_offset;
-  
+
   unsigned int external_reference_max_index;
   unsigned int external_reference_min_index;
   unsigned int external_reference_count;
   int external_reference_base_offset;
-  
-  bfd *abfd;
+
+
   boolean symbol_table_full;
+
+
+boolean done_debug;
+
+
+bfd_chain_type *chain_head;
+bfd_chain_type *chain_root;
+
 } ieee_data_type;
 
 typedef struct {
@@ -81,14 +119,17 @@ typedef struct {
   bfd *abfd;
 } ieee_ar_obstack_type;
 
-typedef struct {
+typedef struct ieee_ar_data_struct
+{
+  common_header_type h;
   ieee_ar_obstack_type *elements;
-  struct  obstack element_obstack;
+
   unsigned  int element_index ;
   unsigned int element_count;
+
 } ieee_ar_data_type;
 
-#define ieee_data(abfd) ((ieee_data_type *)(abfd)->tdata)
-#define ieee_ar_data(abfd) ((ieee_ar_data_type *)(abfd)->arelt_data)
+#define IEEE_DATA(abfd) ((abfd)->tdata.ieee_data)
+#define IEEE_AR_DATA(abfd) ((abfd)->tdata.ieee_ar_data)
 
 #define ptr(abfd) (ieee_data(abfd)->input_p)
This page took 0.024587 seconds and 4 git commands to generate.