* mipsread.c: Pass NULL name pointer to init_type, not 0.
[deliverable/binutils-gdb.git] / bfd / libieee.h
CommitLineData
87f86b4e
DHW
1typedef struct {
2 unsigned int index:24;
3 char letter;
4} ieee_symbol_index_type;
5
a5b00362
JG
6typedef struct ieee_symbol
7{
87f86b4e 8 asymbol symbol;
fc723380 9 struct ieee_symbol *next;
87f86b4e 10
a5b00362 11 unsigned int index;
87f86b4e
DHW
12} ieee_symbol_type;
13
14
fc723380 15typedef struct ieee_reloc {
87f86b4e 16 arelent relent;
fc723380 17 struct ieee_reloc *next;
87f86b4e
DHW
18 ieee_symbol_index_type symbol;
19
20} ieee_reloc_type;
21
22#define ieee_symbol(x) ((ieee_symbol_type *)(x))
23
fc723380 24typedef struct ieee_per_section
87f86b4e
DHW
25{
26 asection *section;
27 bfd_byte *data;
28 bfd_vma offset;
fc723380 29 bfd_vma pc;
87f86b4e
DHW
30 /* For output */
31 file_ptr current_pos;
32 unsigned int current_byte;
33 boolean initialized;
fc723380 34 ieee_reloc_type **reloc_tail_ptr;
87f86b4e
DHW
35} ieee_per_section_type;
36
37#define ieee_per_section(x) ((ieee_per_section_type *)((x)->used_by_bfd))
38#define NSECTIONS 10
39
40
41
a0ad3035
SC
42typedef struct
43{
87f86b4e 44 boolean read_symbols;
fc723380 45 boolean read_data;
a0ad3035
SC
46 unsigned char *input_p;
47 unsigned char *first_byte;
87f86b4e
DHW
48 file_ptr output_cursor;
49 /* Map of section indexes to section ptrs */
fc723380 50 asection * section_table[NSECTIONS];
87f86b4e
DHW
51 ieee_address_descriptor_type ad;
52 ieee_module_begin_type mb;
53 ieee_w_variable_type w;
a0ad3035 54
87f86b4e 55 unsigned int section_count;
a0ad3035 56
87f86b4e
DHW
57 unsigned int map_idx;
58 /* List of GLOBAL EXPORT symbols */
59 ieee_symbol_type *external_symbols;
fc723380 60 /* List of UNDEFINED symbols */
87f86b4e 61 ieee_symbol_type *external_reference;
a0ad3035 62
fc723380 63 /* When the symbols have been canonicalized, they are in a
a0ad3035 64 * special order, we remember various bases here.. */
87f86b4e
DHW
65 unsigned int external_symbol_max_index;
66 unsigned int external_symbol_min_index;
67 unsigned int external_symbol_count;
68 int external_symbol_base_offset;
a0ad3035 69
87f86b4e
DHW
70 unsigned int external_reference_max_index;
71 unsigned int external_reference_min_index;
72 unsigned int external_reference_count;
73 int external_reference_base_offset;
a0ad3035
SC
74
75 bfd *abfd;
fc723380 76 boolean symbol_table_full;
87f86b4e
DHW
77} ieee_data_type;
78
79typedef struct {
80 file_ptr file_offset;
81 bfd *abfd;
82} ieee_ar_obstack_type;
83
84typedef struct {
85 ieee_ar_obstack_type *elements;
86 struct obstack element_obstack;
87 unsigned int element_index ;
88 unsigned int element_count;
89} ieee_ar_data_type;
87f86b4e 90
a5b00362
JG
91#define ieee_data(abfd) ((ieee_data_type *)(abfd)->tdata)
92#define ieee_ar_data(abfd) ((ieee_ar_data_type *)(abfd)->arelt_data)
87f86b4e 93
fc723380 94#define ptr(abfd) (ieee_data(abfd)->input_p)
This page took 0.05302 seconds and 4 git commands to generate.