2000-09-07 Kazu Hirata <kazu@hxi.com>

* elf.c: Fix formatting.
This commit is contained in:
Kazu Hirata
2000-09-07 20:20:05 +00:00
parent 0fc93e6bc4
commit c044fabd5e
2 changed files with 156 additions and 162 deletions

@ -1,3 +1,7 @@
2000-09-07 Kazu Hirata <kazu@hxi.com>
* elf.c: Fix formatting.
2000-09-07 Alexandre Oliva <aoliva@redhat.com> 2000-09-07 Alexandre Oliva <aoliva@redhat.com>
* config.bfd (sh-*-linux*): Added. * config.bfd (sh-*-linux*): Added.

178
bfd/elf.c

@ -233,7 +233,7 @@ bfd_elf_hash (namearg)
static char * static char *
elf_read (abfd, offset, size) elf_read (abfd, offset, size)
bfd * abfd; bfd *abfd;
long offset; long offset;
unsigned int size; unsigned int size;
{ {
@ -254,15 +254,15 @@ elf_read (abfd, offset, size)
boolean boolean
bfd_elf_mkobject (abfd) bfd_elf_mkobject (abfd)
bfd * abfd; bfd *abfd;
{ {
/* this just does initialization */ /* This just does initialization. */
/* coff_mkobject zalloc's space for tdata.coff_obj_data ... */ /* coff_mkobject zalloc's space for tdata.coff_obj_data ... */
elf_tdata (abfd) = (struct elf_obj_tdata *) elf_tdata (abfd) = (struct elf_obj_tdata *)
bfd_zalloc (abfd, sizeof (struct elf_obj_tdata)); bfd_zalloc (abfd, sizeof (struct elf_obj_tdata));
if (elf_tdata (abfd) == 0) if (elf_tdata (abfd) == 0)
return false; return false;
/* since everything is done at close time, do we need any /* Since everything is done at close time, do we need any
initialization? */ initialization? */
return true; return true;
@ -270,7 +270,7 @@ bfd_elf_mkobject (abfd)
boolean boolean
bfd_elf_mkcorefile (abfd) bfd_elf_mkcorefile (abfd)
bfd * abfd; bfd *abfd;
{ {
/* I think this can be done just like an object file. */ /* I think this can be done just like an object file. */
return bfd_elf_mkobject (abfd); return bfd_elf_mkobject (abfd);
@ -278,7 +278,7 @@ bfd_elf_mkcorefile (abfd)
char * char *
bfd_elf_get_str_section (abfd, shindex) bfd_elf_get_str_section (abfd, shindex)
bfd * abfd; bfd *abfd;
unsigned int shindex; unsigned int shindex;
{ {
Elf_Internal_Shdr **i_shdrp; Elf_Internal_Shdr **i_shdrp;
@ -304,7 +304,7 @@ bfd_elf_get_str_section (abfd, shindex)
char * char *
bfd_elf_string_from_elf_section (abfd, shindex, strindex) bfd_elf_string_from_elf_section (abfd, shindex, strindex)
bfd * abfd; bfd *abfd;
unsigned int shindex; unsigned int shindex;
unsigned int strindex; unsigned int strindex;
{ {
@ -384,7 +384,7 @@ _bfd_elf_make_section_from_shdr (abfd, hdr, name)
/* The debugging sections appear to be recognized only by name, not /* The debugging sections appear to be recognized only by name, not
any sort of flag. */ any sort of flag. */
{ {
const char * debug_sec_names [] = const char *debug_sec_names [] =
{ {
".debug", ".debug",
".gnu.linkonce.wi.", ".gnu.linkonce.wi.",
@ -472,7 +472,7 @@ DESCRIPTION
struct elf_internal_shdr * struct elf_internal_shdr *
bfd_elf_find_section (abfd, name) bfd_elf_find_section (abfd, name)
bfd * abfd; bfd *abfd;
char *name; char *name;
{ {
Elf_Internal_Shdr **i_shdrp; Elf_Internal_Shdr **i_shdrp;
@ -512,7 +512,6 @@ const char *const bfd_elf_section_type_names[] = {
function. It just short circuits the reloc if producing function. It just short circuits the reloc if producing
relocateable output against an external symbol. */ relocateable output against an external symbol. */
/*ARGSUSED*/
bfd_reloc_status_type bfd_reloc_status_type
bfd_elf_generic_reloc (abfd, bfd_elf_generic_reloc (abfd,
reloc_entry, reloc_entry,
@ -1675,7 +1674,6 @@ _bfd_elf_init_reloc_shdr (abfd, rel_hdr, asect, use_rela_p)
/* Set up an ELF internal section header for a section. */ /* Set up an ELF internal section header for a section. */
/*ARGSUSED*/
static void static void
elf_fake_sections (abfd, asect, failedptrarg) elf_fake_sections (abfd, asect, failedptrarg)
bfd *abfd; bfd *abfd;
@ -3396,24 +3394,24 @@ prep_headers (abfd)
i_ehdrp->e_version = bed->s->ev_current; i_ehdrp->e_version = bed->s->ev_current;
i_ehdrp->e_ehsize = bed->s->sizeof_ehdr; i_ehdrp->e_ehsize = bed->s->sizeof_ehdr;
/* no program header, for now. */ /* No program header, for now. */
i_ehdrp->e_phoff = 0; i_ehdrp->e_phoff = 0;
i_ehdrp->e_phentsize = 0; i_ehdrp->e_phentsize = 0;
i_ehdrp->e_phnum = 0; i_ehdrp->e_phnum = 0;
/* each bfd section is section header entry */ /* Each bfd section is section header entry. */
i_ehdrp->e_entry = bfd_get_start_address (abfd); i_ehdrp->e_entry = bfd_get_start_address (abfd);
i_ehdrp->e_shentsize = bed->s->sizeof_shdr; i_ehdrp->e_shentsize = bed->s->sizeof_shdr;
/* if we're building an executable, we'll need a program header table */ /* If we're building an executable, we'll need a program header table. */
if (abfd->flags & EXEC_P) if (abfd->flags & EXEC_P)
{ {
/* it all happens later */ /* It all happens later. */
#if 0 #if 0
i_ehdrp->e_phentsize = sizeof (Elf_External_Phdr); i_ehdrp->e_phentsize = sizeof (Elf_External_Phdr);
/* elf_build_phdrs() returns a (NULL-terminated) array of /* elf_build_phdrs() returns a (NULL-terminated) array of
Elf_Internal_Phdrs */ Elf_Internal_Phdrs. */
i_phdrp = elf_build_phdrs (abfd, i_ehdrp, i_shdrp, &i_ehdrp->e_phnum); i_phdrp = elf_build_phdrs (abfd, i_ehdrp, i_shdrp, &i_ehdrp->e_phnum);
i_ehdrp->e_phoff = outbase; i_ehdrp->e_phoff = outbase;
outbase += i_ehdrp->e_phentsize * i_ehdrp->e_phnum; outbase += i_ehdrp->e_phentsize * i_ehdrp->e_phnum;
@ -3527,7 +3525,9 @@ _bfd_elf_write_corefile_contents (abfd)
/* Hopefully this can be done just like an object file. */ /* Hopefully this can be done just like an object file. */
return _bfd_elf_write_object_contents (abfd); return _bfd_elf_write_object_contents (abfd);
} }
/* given a section, search the header to find them... */
/* Given a section, search the header to find them. */
int int
_bfd_elf_section_from_bfd_section (abfd, asect) _bfd_elf_section_from_bfd_section (abfd, asect)
bfd *abfd; bfd *abfd;
@ -3649,7 +3649,7 @@ copy_private_bfd_data (ibfd, obfd)
struct elf_segment_map * phdr_adjust_seg = NULL; struct elf_segment_map * phdr_adjust_seg = NULL;
unsigned int phdr_adjust_num = 0; unsigned int phdr_adjust_num = 0;
if ( bfd_get_flavour (ibfd) != bfd_target_elf_flavour if (bfd_get_flavour (ibfd) != bfd_target_elf_flavour
|| bfd_get_flavour (obfd) != bfd_target_elf_flavour) || bfd_get_flavour (obfd) != bfd_target_elf_flavour)
return true; return true;
@ -3659,7 +3659,7 @@ copy_private_bfd_data (ibfd, obfd)
iehdr = elf_elfheader (ibfd); iehdr = elf_elfheader (ibfd);
map_first = NULL; map_first = NULL;
pointer_to_map = & map_first; pointer_to_map = &map_first;
num_segments = elf_elfheader (ibfd)->e_phnum; num_segments = elf_elfheader (ibfd)->e_phnum;
maxpagesize = get_elf_backend_data (obfd)->maxpagesize; maxpagesize = get_elf_backend_data (obfd)->maxpagesize;
@ -3736,16 +3736,16 @@ copy_private_bfd_data (ibfd, obfd)
parameters to objcopy. */ parameters to objcopy. */
for (i = 0, segment = elf_tdata (ibfd)->phdr; for (i = 0, segment = elf_tdata (ibfd)->phdr;
i < num_segments; i < num_segments;
i ++, segment ++) i++, segment++)
{ {
unsigned int j; unsigned int j;
Elf_Internal_Phdr * segment2; Elf_Internal_Phdr *segment2;
if (segment->p_type != PT_LOAD) if (segment->p_type != PT_LOAD)
continue; continue;
/* Determine if this segment overlaps any previous segments. */ /* Determine if this segment overlaps any previous segments. */
for (j = 0, segment2 = elf_tdata (ibfd)->phdr; j < i; j ++, segment2 ++) for (j = 0, segment2 = elf_tdata (ibfd)->phdr; j < i; j++, segment2 ++)
{ {
bfd_signed_vma extra_length; bfd_signed_vma extra_length;
@ -3756,7 +3756,8 @@ copy_private_bfd_data (ibfd, obfd)
/* Merge the two segments together. */ /* Merge the two segments together. */
if (segment2->p_vaddr < segment->p_vaddr) if (segment2->p_vaddr < segment->p_vaddr)
{ {
/* Extend SEGMENT2 to include SEGMENT and then delete SEGMENT. */ /* Extend SEGMENT2 to include SEGMENT and then delete
SEGMENT. */
extra_length = extra_length =
SEGMENT_END (segment, segment->p_vaddr) SEGMENT_END (segment, segment->p_vaddr)
- SEGMENT_END (segment2, segment2->p_vaddr); - SEGMENT_END (segment2, segment2->p_vaddr);
@ -3776,7 +3777,8 @@ copy_private_bfd_data (ibfd, obfd)
} }
else else
{ {
/* Extend SEGMENT to include SEGMENT2 and then delete SEGMENT2. */ /* Extend SEGMENT to include SEGMENT2 and then delete
SEGMENT2. */
extra_length = extra_length =
SEGMENT_END (segment2, segment2->p_vaddr) SEGMENT_END (segment2, segment2->p_vaddr)
- SEGMENT_END (segment, segment->p_vaddr); - SEGMENT_END (segment, segment->p_vaddr);
@ -3812,7 +3814,7 @@ copy_private_bfd_data (ibfd, obfd)
section_count = 0; section_count = 0;
for (section = ibfd->sections; section != NULL; section = section->next) for (section = ibfd->sections; section != NULL; section = section->next)
if (INCLUDE_SECTION_IN_SEGMENT (section, segment)) if (INCLUDE_SECTION_IN_SEGMENT (section, segment))
++ section_count; ++section_count;
/* Allocate a segment map big enough to contain all of the /* Allocate a segment map big enough to contain all of the
sections we have selected. */ sections we have selected. */
@ -3862,8 +3864,8 @@ copy_private_bfd_data (ibfd, obfd)
bfd_get_filename (ibfd)); bfd_get_filename (ibfd));
map->count = 0; map->count = 0;
* pointer_to_map = map; *pointer_to_map = map;
pointer_to_map = & map->next; pointer_to_map = &map->next;
continue; continue;
} }
@ -3966,8 +3968,8 @@ copy_private_bfd_data (ibfd, obfd)
the list of built segments and carry on to process the next the list of built segments and carry on to process the next
program header in the input BFD. */ program header in the input BFD. */
map->count = section_count; map->count = section_count;
* pointer_to_map = map; *pointer_to_map = map;
pointer_to_map = & map->next; pointer_to_map = &map->next;
free (sections); free (sections);
continue; continue;
@ -4081,8 +4083,8 @@ copy_private_bfd_data (ibfd, obfd)
BFD_ASSERT (map->count > 0); BFD_ASSERT (map->count > 0);
/* Add the current segment to the list of built segments. */ /* Add the current segment to the list of built segments. */
* pointer_to_map = map; *pointer_to_map = map;
pointer_to_map = & map->next; pointer_to_map = &map->next;
if (isec < section_count) if (isec < section_count)
{ {
@ -4138,7 +4140,7 @@ copy_private_bfd_data (ibfd, obfd)
unsigned int count; unsigned int count;
for (count = 0, map = map_first; map != NULL; map = map->next) for (count = 0, map = map_first; map != NULL; map = map->next)
count ++; count++;
if (count > phdr_adjust_num) if (count > phdr_adjust_num)
phdr_adjust_seg->p_paddr phdr_adjust_seg->p_paddr
@ -4146,10 +4148,11 @@ copy_private_bfd_data (ibfd, obfd)
} }
#if 0 #if 0
/* Final Step: Sort the segments into ascending order of physical address. */ /* Final Step: Sort the segments into ascending order of physical
address. */
if (map_first != NULL) if (map_first != NULL)
{ {
struct elf_segment_map * prev; struct elf_segment_map *prev;
prev = map_first; prev = map_first;
for (map = map_first->next; map != NULL; prev = map, map = map->next) for (map = map_first->next; map != NULL; prev = map, map = map->next)
@ -5237,7 +5240,6 @@ _bfd_elf_rel_vtable_reloc_fn (abfd, re, symbol, data, is, obfd, errmsg)
{ {
return bfd_reloc_ok; return bfd_reloc_ok;
} }
/* Elf core file support. Much of this only works on native /* Elf core file support. Much of this only works on native
toolchains, since we rely on knowing the toolchains, since we rely on knowing the
@ -5248,25 +5250,22 @@ _bfd_elf_rel_vtable_reloc_fn (abfd, re, symbol, data, is, obfd, errmsg)
# include <sys/procfs.h> # include <sys/procfs.h>
#endif #endif
/* Define offsetof for those systems which lack it. */ /* Define offsetof for those systems which lack it. */
#ifndef offsetof #ifndef offsetof
# define offsetof(TYPE, MEMBER) ((unsigned long) &((TYPE *)0)->MEMBER) # define offsetof(TYPE, MEMBER) ((unsigned long) &((TYPE *)0)->MEMBER)
#endif #endif
/* FIXME: this is kinda wrong, but it's what gdb wants. */ /* FIXME: this is kinda wrong, but it's what gdb wants. */
static int static int
elfcore_make_pid (abfd) elfcore_make_pid (abfd)
bfd* abfd; bfd *abfd;
{ {
return ((elf_tdata (abfd)->core_lwpid << 16) return ((elf_tdata (abfd)->core_lwpid << 16)
+ (elf_tdata (abfd)->core_pid)); + (elf_tdata (abfd)->core_pid));
} }
/* If there isn't a section called NAME, make one, using /* If there isn't a section called NAME, make one, using
data from SECT. Note, this function will generate a data from SECT. Note, this function will generate a
reference to NAME, so you shouldn't deallocate or reference to NAME, so you shouldn't deallocate or
@ -5274,11 +5273,11 @@ elfcore_make_pid (abfd)
static boolean static boolean
elfcore_maybe_make_sect (abfd, name, sect) elfcore_maybe_make_sect (abfd, name, sect)
bfd* abfd; bfd *abfd;
char* name; char *name;
asection* sect; asection *sect;
{ {
asection* sect2; asection *sect2;
if (bfd_get_section_by_name (abfd, name) != NULL) if (bfd_get_section_by_name (abfd, name) != NULL)
return true; return true;
@ -5294,7 +5293,6 @@ elfcore_maybe_make_sect (abfd, name, sect)
return true; return true;
} }
/* prstatus_t exists on: /* prstatus_t exists on:
solaris 2.5+ solaris 2.5+
linux 2.[01] + glibc linux 2.[01] + glibc
@ -5304,12 +5302,12 @@ elfcore_maybe_make_sect (abfd, name, sect)
#if defined (HAVE_PRSTATUS_T) #if defined (HAVE_PRSTATUS_T)
static boolean static boolean
elfcore_grok_prstatus (abfd, note) elfcore_grok_prstatus (abfd, note)
bfd* abfd; bfd *abfd;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
char buf[100]; char buf[100];
char* name; char *name;
asection* sect; asection *sect;
int raw_size; int raw_size;
int offset; int offset;
@ -5390,7 +5388,6 @@ elfcore_grok_prstatus (abfd, note)
} }
#endif /* defined (HAVE_PRSTATUS_T) */ #endif /* defined (HAVE_PRSTATUS_T) */
/* Create a pseudosection containing the exact contents of NOTE. This /* Create a pseudosection containing the exact contents of NOTE. This
actually creates up to two pseudosections: actually creates up to two pseudosections:
- For the single-threaded case, a section named NAME, unless - For the single-threaded case, a section named NAME, unless
@ -5401,13 +5398,13 @@ elfcore_grok_prstatus (abfd, note)
static boolean static boolean
elfcore_make_note_pseudosection (abfd, name, note) elfcore_make_note_pseudosection (abfd, name, note)
bfd* abfd; bfd *abfd;
char *name; char *name;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
char buf[100]; char buf[100];
char *threaded_name; char *threaded_name;
asection* sect; asection *sect;
/* Build the section name. */ /* Build the section name. */
@ -5431,31 +5428,30 @@ elfcore_make_note_pseudosection (abfd, name, note)
return true; return true;
} }
/* There isn't a consistent prfpregset_t across platforms, /* There isn't a consistent prfpregset_t across platforms,
but it doesn't matter, because we don't have to pick this but it doesn't matter, because we don't have to pick this
data structure apart. */ data structure apart. */
static boolean static boolean
elfcore_grok_prfpreg (abfd, note) elfcore_grok_prfpreg (abfd, note)
bfd* abfd; bfd *abfd;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
return elfcore_make_note_pseudosection (abfd, ".reg2", note); return elfcore_make_note_pseudosection (abfd, ".reg2", note);
} }
/* Linux dumps the Intel SSE regs in a note named "LINUX" with a note /* Linux dumps the Intel SSE regs in a note named "LINUX" with a note
type of 5 (NT_PRXFPREG). Just include the whole note's contents type of 5 (NT_PRXFPREG). Just include the whole note's contents
literally. */ literally. */
static boolean static boolean
elfcore_grok_prxfpreg (abfd, note) elfcore_grok_prxfpreg (abfd, note)
bfd* abfd; bfd *abfd;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
return elfcore_make_note_pseudosection (abfd, ".reg-xfp", note); return elfcore_make_note_pseudosection (abfd, ".reg-xfp", note);
} }
#if defined (HAVE_PRPSINFO_T) #if defined (HAVE_PRPSINFO_T)
typedef prpsinfo_t elfcore_psinfo_t; typedef prpsinfo_t elfcore_psinfo_t;
#if defined (HAVE_PRPSINFO32_T) /* Sparc64 cross Sparc32 */ #if defined (HAVE_PRPSINFO32_T) /* Sparc64 cross Sparc32 */
@ -5470,7 +5466,6 @@ typedef psinfo32_t elfcore_psinfo32_t;
#endif #endif
#endif #endif
#if defined (HAVE_PRPSINFO_T) || defined (HAVE_PSINFO_T) #if defined (HAVE_PRPSINFO_T) || defined (HAVE_PSINFO_T)
/* return a malloc'ed copy of a string at START which is at /* return a malloc'ed copy of a string at START which is at
@ -5479,12 +5474,12 @@ typedef psinfo32_t elfcore_psinfo32_t;
static char* static char*
elfcore_strndup (abfd, start, max) elfcore_strndup (abfd, start, max)
bfd* abfd; bfd *abfd;
char* start; char *start;
int max; int max;
{ {
char* dup; char *dup;
char* end = memchr (start, '\0', max); char *end = memchr (start, '\0', max);
int len; int len;
if (end == NULL) if (end == NULL)
@ -5504,8 +5499,8 @@ elfcore_strndup (abfd, start, max)
static boolean static boolean
elfcore_grok_psinfo (abfd, note) elfcore_grok_psinfo (abfd, note)
bfd* abfd; bfd *abfd;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
if (note->descsz == sizeof (elfcore_psinfo_t)) if (note->descsz == sizeof (elfcore_psinfo_t))
{ {
@ -5547,7 +5542,7 @@ elfcore_grok_psinfo (abfd, note)
implementations, so strip it off if it exists. */ implementations, so strip it off if it exists. */
{ {
char* command = elf_tdata (abfd)->core_command; char *command = elf_tdata (abfd)->core_command;
int n = strlen (command); int n = strlen (command);
if (0 < n && command[n - 1] == ' ') if (0 < n && command[n - 1] == ' ')
@ -5558,12 +5553,11 @@ elfcore_grok_psinfo (abfd, note)
} }
#endif /* defined (HAVE_PRPSINFO_T) || defined (HAVE_PSINFO_T) */ #endif /* defined (HAVE_PRPSINFO_T) || defined (HAVE_PSINFO_T) */
#if defined (HAVE_PSTATUS_T) #if defined (HAVE_PSTATUS_T)
static boolean static boolean
elfcore_grok_pstatus (abfd, note) elfcore_grok_pstatus (abfd, note)
bfd* abfd; bfd *abfd;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
if (note->descsz == sizeof (pstatus_t)) if (note->descsz == sizeof (pstatus_t))
{ {
@ -5592,17 +5586,16 @@ elfcore_grok_pstatus (abfd, note)
} }
#endif /* defined (HAVE_PSTATUS_T) */ #endif /* defined (HAVE_PSTATUS_T) */
#if defined (HAVE_LWPSTATUS_T) #if defined (HAVE_LWPSTATUS_T)
static boolean static boolean
elfcore_grok_lwpstatus (abfd, note) elfcore_grok_lwpstatus (abfd, note)
bfd* abfd; bfd *abfd;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
lwpstatus_t lwpstat; lwpstatus_t lwpstat;
char buf[100]; char buf[100];
char* name; char *name;
asection* sect; asection *sect;
if (note->descsz != sizeof (lwpstat)) if (note->descsz != sizeof (lwpstat))
return true; return true;
@ -5677,18 +5670,18 @@ elfcore_grok_lwpstatus (abfd, note)
#if defined (HAVE_WIN32_PSTATUS_T) #if defined (HAVE_WIN32_PSTATUS_T)
static boolean static boolean
elfcore_grok_win32pstatus (abfd, note) elfcore_grok_win32pstatus (abfd, note)
bfd * abfd; bfd *abfd;
Elf_Internal_Note * note; Elf_Internal_Note *note;
{ {
char buf[30]; char buf[30];
char * name; char *name;
asection * sect; asection *sect;
win32_pstatus_t pstatus; win32_pstatus_t pstatus;
if (note->descsz < sizeof (pstatus)) if (note->descsz < sizeof (pstatus))
return true; return true;
memcpy (& pstatus, note->descdata, note->descsz); memcpy (&pstatus, note->descdata, note->descsz);
switch (pstatus.data_type) switch (pstatus.data_type)
{ {
@ -5696,7 +5689,7 @@ elfcore_grok_win32pstatus (abfd, note)
/* FIXME: need to add ->core_command. */ /* FIXME: need to add ->core_command. */
elf_tdata (abfd)->core_signal = pstatus.data.process_info.signal; elf_tdata (abfd)->core_signal = pstatus.data.process_info.signal;
elf_tdata (abfd)->core_pid = pstatus.data.process_info.pid; elf_tdata (abfd)->core_pid = pstatus.data.process_info.pid;
break ; break;
case NOTE_INFO_THREAD: case NOTE_INFO_THREAD:
/* Make a ".reg/999" section. */ /* Make a ".reg/999" section. */
@ -5725,7 +5718,7 @@ elfcore_grok_win32pstatus (abfd, note)
case NOTE_INFO_MODULE: case NOTE_INFO_MODULE:
/* Make a ".module/xxxxxxxx" section. */ /* Make a ".module/xxxxxxxx" section. */
sprintf (buf, ".module/%08x" , pstatus.data.module_info.base_address); sprintf (buf, ".module/%08x", pstatus.data.module_info.base_address);
name = bfd_alloc (abfd, strlen (buf) + 1); name = bfd_alloc (abfd, strlen (buf) + 1);
if (name == NULL) if (name == NULL)
@ -5754,8 +5747,8 @@ elfcore_grok_win32pstatus (abfd, note)
static boolean static boolean
elfcore_grok_note (abfd, note) elfcore_grok_note (abfd, note)
bfd* abfd; bfd *abfd;
Elf_Internal_Note* note; Elf_Internal_Note *note;
{ {
switch (note->type) switch (note->type)
{ {
@ -5800,15 +5793,14 @@ elfcore_grok_note (abfd, note)
} }
} }
static boolean static boolean
elfcore_read_notes (abfd, offset, size) elfcore_read_notes (abfd, offset, size)
bfd* abfd; bfd *abfd;
bfd_vma offset; bfd_vma offset;
bfd_vma size; bfd_vma size;
{ {
char* buf; char *buf;
char* p; char *p;
if (size <= 0) if (size <= 0)
return true; return true;
@ -5831,7 +5823,7 @@ elfcore_read_notes (abfd, offset, size)
while (p < buf + size) while (p < buf + size)
{ {
/* FIXME: bad alignment assumption. */ /* FIXME: bad alignment assumption. */
Elf_External_Note* xnp = (Elf_External_Note*) p; Elf_External_Note *xnp = (Elf_External_Note *) p;
Elf_Internal_Note in; Elf_Internal_Note in;
in.type = bfd_h_get_32 (abfd, (bfd_byte *) xnp->type); in.type = bfd_h_get_32 (abfd, (bfd_byte *) xnp->type);
@ -5853,13 +5845,12 @@ elfcore_read_notes (abfd, offset, size)
return true; return true;
} }
/* FIXME: This function is now unnecessary. Callers can just call /* FIXME: This function is now unnecessary. Callers can just call
bfd_section_from_phdr directly. */ bfd_section_from_phdr directly. */
boolean boolean
_bfd_elfcore_section_from_phdr (abfd, phdr, sec_num) _bfd_elfcore_section_from_phdr (abfd, phdr, sec_num)
bfd* abfd; bfd *abfd;
Elf_Internal_Phdr* phdr; Elf_Internal_Phdr* phdr;
int sec_num; int sec_num;
{ {
@ -5868,14 +5859,13 @@ _bfd_elfcore_section_from_phdr (abfd, phdr, sec_num)
return true; return true;
} }
/* Providing external access to the ELF program header table. */ /* Providing external access to the ELF program header table. */
/* Return an upper bound on the number of bytes required to store a /* Return an upper bound on the number of bytes required to store a
copy of ABFD's program header table entries. Return -1 if an error copy of ABFD's program header table entries. Return -1 if an error
occurs; bfd_get_error will return an appropriate code. */ occurs; bfd_get_error will return an appropriate code. */
long long
bfd_get_elf_phdr_upper_bound (abfd) bfd_get_elf_phdr_upper_bound (abfd)
bfd *abfd; bfd *abfd;
@ -5890,7 +5880,6 @@ bfd_get_elf_phdr_upper_bound (abfd)
* sizeof (Elf_Internal_Phdr)); * sizeof (Elf_Internal_Phdr));
} }
/* Copy ABFD's program header table entries to *PHDRS. The entries /* Copy ABFD's program header table entries to *PHDRS. The entries
will be stored as an array of Elf_Internal_Phdr structures, as will be stored as an array of Elf_Internal_Phdr structures, as
defined in include/elf/internal.h. To find out how large the defined in include/elf/internal.h. To find out how large the
@ -5898,6 +5887,7 @@ bfd_get_elf_phdr_upper_bound (abfd)
Return the number of program header table entries read, or -1 if an Return the number of program header table entries read, or -1 if an
error occurs; bfd_get_error will return an appropriate code. */ error occurs; bfd_get_error will return an appropriate code. */
int int
bfd_get_elf_phdrs (abfd, phdrs) bfd_get_elf_phdrs (abfd, phdrs)
bfd *abfd; bfd *abfd;