Update for merge of main BFD and GDB's BFD. Remove "_struct" suffix

on all struct types -- they are in a separate namespace anyway.
Move bfd_alloc, bfd_zalloc, bfd_realloc, bfd_release into libbfd.h,
since external users shouldn't be calling them anyway.
This commit is contained in:
John Gilmore 1991-05-02 02:52:21 +00:00
parent aec4cb918e
commit 9c6a9c925f
4 changed files with 30 additions and 46 deletions

View File

@ -1,7 +1,7 @@
/* VAX-specific definitions for a.out file header fields. */
#define PAGE_SIZE 512 /* aka NBPG in <sys/param.h> */
#define SEGMENT_SIZE PAGE_SIZE /* rounding between text/data ??! */
#define SEGMENT_SIZE PAGE_SIZE /* rounding between text/data ? */
#define TEXT_START_ADDR 0 /* Text start address: see
<machine/vmparam.h> USRTEXT. */
#define STACK_END_ADDR 0x80000000-(14+14)*PAGE_SIZE /* see

View File

@ -41,7 +41,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define BFD_VERSION "1.9"
/* forward declaration */
typedef struct _bfd_struct bfd;
typedef struct _bfd bfd;
/* General rules: functions which are boolean return true on success
and false on failure (unless they're a predicate). -- bfd.doc */
@ -165,11 +165,11 @@ typedef int bfd_size_type;
*/
typedef struct symbol_cache_entry
{
struct _bfd_struct *the_bfd; /* Just a way to find out host type */
struct _bfd *the_bfd; /* Just a way to find out host type */
CONST char *name;
symvalue value;
flagword flags;
struct sec_struct *section;
struct sec *section;
PTR udata; /* Target-specific stuff */
} asymbol;
@ -182,7 +182,7 @@ typedef struct symbol_cache_entry
/* This is a type pun with struct ranlib on purpose! */
typedef struct {
typedef struct carsym {
char *name;
file_ptr file_offset; /* look here to find the file */
} carsym; /* to make these you call a carsymogen */
@ -195,7 +195,7 @@ typedef struct {
segment origin. This is because we won't necessarily have a symbol
which is guaranteed to point to the segment origin. */
typedef enum {
typedef enum bfd_reloc_status {
bfd_reloc_ok,
bfd_reloc_overflow,
bfd_reloc_outofrange,
@ -206,7 +206,7 @@ typedef enum {
bfd_reloc_dangerous}
bfd_reloc_status_enum_type;
typedef CONST struct rint_struct {
typedef CONST struct rint {
unsigned int type;
unsigned int rightshift;
unsigned int size;
@ -255,14 +255,14 @@ typedef struct reloc_cache_entry
rawdata_offset address; /* offset in section */
bfd_vma addend; /* addend for relocation value */
struct sec_struct *section; /* if sym is null this is the section */
struct sec *section; /* if sym is null this is the section */
reloc_howto_type *howto;
} arelent;
typedef struct relent_chain_struct {
typedef struct relent_chain {
arelent relent;
struct relent_chain_struct *next;
struct relent_chain *next;
} arelent_chain;
/* Used in generating armaps. Perhaps just a forward definition would do? */
@ -298,10 +298,10 @@ typedef struct lineno_cache_entry {
#define SEC_CONSTRUCTOR 0400
#define SEC_HAS_CONTENTS (0x200)
typedef struct sec_struct
typedef struct sec
{
CONST char *name;
struct sec_struct *next;
struct sec *next;
flagword flags;
bfd_vma vma;
@ -312,7 +312,7 @@ typedef struct sec_struct
an output section, this value will be 0...
*/
bfd_vma output_offset;
struct sec_struct *output_section;
struct sec *output_section;
unsigned int alignment_power; /* eg 4 aligns to 2^4*/
arelent *relocation; /* for input files */
@ -322,14 +322,14 @@ typedef struct sec_struct
file_ptr filepos; /* File position of section data */
file_ptr rel_filepos; /* File position of relocation info */
file_ptr line_filepos;
struct user_section_struct *userdata;
struct lang_output_section_struct *otheruserdata;
struct user_section *userdata;
struct lang_output_section *otheruserdata;
int index; /* Which section is it 0..nth */
alent *lineno;
unsigned int lineno_count;
/* When a section is being output, this value changes as more
* linenumbers are written out */
linenumbers are written out */
file_ptr moving_line_filepos;
/* what the section number is in the target world */
@ -337,8 +337,7 @@ typedef struct sec_struct
PTR used_by_bfd;
/* If this is a constructor section then here is a list of relents
*/
/* If this is a constructor section then here is a list of relents */
arelent_chain *constructor_chain;
} asection;
@ -347,7 +346,7 @@ typedef struct sec_struct
typedef struct sec_struct *sec_ptr;
typedef struct sec *sec_ptr;
#define bfd_section_name(bfd, ptr) ((ptr)->name)
#define bfd_section_size(bfd, ptr) ((ptr)->size)
@ -374,7 +373,7 @@ typedef enum {no_error = 0, system_call_error, invalid_target,
extern bfd_ec bfd_error;
typedef struct {
typedef struct bfd_error_vector {
PROTO(void,(* nonrepresentable_section ),(CONST bfd *CONST abfd,
CONST char *CONST name));
} bfd_error_vector_type;
@ -493,9 +492,8 @@ typedef struct bfd_target
SDEF (asymbol *, _bfd_make_empty_symbol, (bfd *));
SDEF (void, _bfd_print_symbol, (bfd *, PTR, asymbol *,
bfd_print_symbol_enum_type));
SDEF(alent *, _get_lineno, (bfd *, asymbol *));
SDEF (alent *, _get_lineno, (bfd *, asymbol *));
/* This should perhaps be format-dependent, I don't know yet. -gnu */
SDEF (boolean, _bfd_set_arch_mach, (bfd *, enum bfd_architecture,
unsigned long));
@ -584,7 +582,7 @@ extern CONST short _bfd_host_big_endian;
are "FILE *" and "time_t". If these had been declared as structs
rather than typedefs, we wouldn't have this problem. */
struct _bfd_struct
struct _bfd
{
CONST char *filename; /* could be null; filename user opened with */
@ -592,8 +590,8 @@ struct _bfd_struct
char *iostream; /* stdio FILE *, unless an archive element */
boolean cacheable; /* iostream can be closed if desired */
struct _bfd_struct *lru_prev; /* Used for file caching */
struct _bfd_struct *lru_next; /* Used for file caching */
struct _bfd *lru_prev; /* Used for file caching */
struct _bfd *lru_next; /* Used for file caching */
file_ptr where; /* Where the file was when closed */
boolean opened_once;
boolean mtime_set; /* Flag indicating mtime is available */
@ -627,9 +625,9 @@ to 0 for non archive files
/* Archive stuff. strictly speaking we don't need all three bfd* vars,
but doing so would allow recursive archives! */
PTR arelt_data; /* needed if this came from an archive */
struct _bfd_struct *my_archive; /* if this is an archive element */
struct _bfd_struct *next; /* output chain pointer */
struct _bfd_struct *archive_head; /* for output archive */
struct _bfd *my_archive; /* if this is an archive element */
struct _bfd *next; /* output chain pointer */
struct _bfd *archive_head; /* for output archive */
boolean has_armap; /* if an arch; has it an armap? */
PTR tdata; /* target-specific storage */
@ -646,15 +644,8 @@ to 0 for non archive files
struct obstack memory;
};
PROTO(PTR, bfd_alloc, (bfd *abfd, size_t size));
PROTO(PTR, bfd_zalloc,(bfd *abfd, size_t size));
PROTO(PTR, bfd_realloc,(bfd *abfd, PTR orig, size_t new));
PROTO(size_t, bfd_alloc_size,(bfd *abfd));
/* FIXME, these are broken! bfd_free references "Y" which is not a parameter.
bfd_release frees the mentioned object AND EVERYTHING AFTER IT IN THE
OBSTACK! -- gnu@cygnus.com */
#define bfd_free(x) (obstack_free(&(x->memory),y))
#define bfd_release(x,y) (obstack_free(&(x->memory),y))
/* The various callable routines */
PROTO(bfd_size_type, bfd_alloc_size,(bfd *abfd));
PROTO (char *, bfd_printable_arch_mach,(enum bfd_architecture, unsigned long));
PROTO (char *, bfd_format_string, (bfd_format format));

View File

@ -1,5 +1,4 @@
/* $Id$
*
/*
* This file is a modified version of 'a.out.h'. It is to be used in all
* GNU tools modified to support the i80960 (or tools that operate on
* object files created by such tools).

View File

@ -16,18 +16,12 @@ You should have received a copy of the GNU General Public License
along with BFD; see the file COPYING. If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
/* $Id$ */
/* All the system include files boiled into one place.
One day, everyone will have the same set of include files..
This is ugly, but if you can think of a better way of doing this,
tell me. steve@cygnus.com
*/
tell me. --steve@cygnus.com */
#ifndef _SYSDEP_H
#define _SYSDEP_H