/* BFD back-end for HPPA BSD core files.
- Copyright 1993, 94, 95, 97, 1998 Free Software Foundation, Inc.
+ Copyright 1993, 1994, 1995, 1998, 1999, 2001
+ Free Software Foundation, Inc.
This file is part of BFD, the Binary File Descriptor library.
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Written by the Center for Software Science at the University of Utah
- and by Cygnus Support.
+ and by Cygnus Support.
The core file structure for the Utah 4.3BSD and OSF1 ports on the
PA is a mix between traditional cores and hpux cores -- just
different enough that supporting this format would tend to add
gross hacks to trad-core.c or hpux-core.c. So instead we keep any
gross hacks isolated to this file. */
-
/* This file can only be compiled on systems which use HPPA-BSD style
core files.
#include <sys/user.h> /* After a.out.h */
#include <sys/file.h>
-static asection *make_bfd_asection PARAMS ((bfd *, CONST char *,
+static asection *make_bfd_asection PARAMS ((bfd *, const char *,
flagword, bfd_size_type,
file_ptr, unsigned int));
static asymbol *hppabsd_core_make_empty_symbol PARAMS ((bfd *));
static asection *
make_bfd_asection (abfd, name, flags, _raw_size, offset, alignment_power)
bfd *abfd;
- CONST char *name;
+ const char *name;
flagword flags;
bfd_size_type _raw_size;
file_ptr offset;
hppabsd_core_make_empty_symbol (abfd)
bfd *abfd;
{
- asymbol *new = (asymbol *) bfd_zalloc (abfd, sizeof (asymbol));
+ asymbol *new;
+
+ new = (asymbol *) bfd_zalloc (abfd, (bfd_size_type) sizeof (asymbol));
if (new)
new->the_bfd = abfd;
return new;
/* Try to read in the u-area. We will need information from this
to know how to grok the rest of the core structures. */
- val = bfd_read ((void *) &u, 1, sizeof u, abfd);
+ val = bfd_bread ((void *) &u, (bfd_size_type) sizeof u, abfd);
if (val != sizeof u)
{
if (bfd_get_error () != bfd_error_system_call)
return NULL;
}
-
/* Sanity checks. Make sure the size of the core file matches the
the size computed from information within the core itself. */
{
/* OK, we believe you. You're a core file (sure, sure). */
coredata = (struct hppabsd_core_struct *)
- bfd_zalloc (abfd, sizeof (struct hppabsd_core_struct));
+ bfd_zalloc (abfd, (bfd_size_type) sizeof (struct hppabsd_core_struct));
if (!coredata)
return NULL;
core_stacksec (abfd) = make_bfd_asection (abfd, ".stack",
SEC_ALLOC + SEC_HAS_CONTENTS,
clicksz * u.u_ssize,
- NBPG * (USIZE + KSTAKSIZE)
+ NBPG * (USIZE + KSTAKSIZE)
+ clicksz * u.u_dsize, 2);
- core_stacksec (abfd)->vma = USRSTACK;
+ core_stacksec (abfd)->vma = USRSTACK;
core_datasec (abfd) = make_bfd_asection (abfd, ".data",
SEC_ALLOC + SEC_LOAD
/* There's no way to know this... */
return true;
}
-
\f
#define hppabsd_core_get_symtab_upper_bound \
_bfd_nosymbols_get_symtab_upper_bound
swap_abort ()
{
/* This way doesn't require any declaration for ANSI to fuck up. */
- abort ();
+ abort ();
}
#define NO_GET ((bfd_vma (*) PARAMS (( const bfd_byte *))) swap_abort )
bfd_false, bfd_false,
bfd_false, bfd_false
},
-
+
BFD_JUMP_TABLE_GENERIC (_bfd_generic),
BFD_JUMP_TABLE_COPY (_bfd_generic),
BFD_JUMP_TABLE_CORE (hppabsd_core),
BFD_JUMP_TABLE_LINK (_bfd_nolink),
BFD_JUMP_TABLE_DYNAMIC (_bfd_nodynamic),
+ NULL,
+
(PTR) 0 /* backend_data */
};
#endif