* elf32-sparc.c (elf32_sparc_grok_psinfo): New function.

This commit is contained in:
Mark Kettenis 2004-01-04 09:24:27 +00:00
parent 3390c393e1
commit 0647ed71ac
2 changed files with 34 additions and 0 deletions

View file

@ -1,3 +1,7 @@
2004-01-04 Mark Kettenis <kettenis@gnu.org>
* elf32-sparc.c (elf32_sparc_grok_psinfo): New function.
2004-01-02 Mark Kettenis <kettenis@gnu.org>
* elf32-i386.c (elf_i386_grok_prstatus): Add support for FreeBSD.

View file

@ -501,6 +501,35 @@ sparc_elf_lox10_reloc (abfd,
return bfd_reloc_ok;
}
/* Support for core dump NOTE sections. */
static bfd_boolean
elf32_sparc_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
{
switch (note->descsz)
{
default:
return FALSE;
case 260: /* Solaris prpsinfo_t. */
elf_tdata (abfd)->core_program
= _bfd_elfcore_strndup (abfd, note->descdata + 84, 16);
elf_tdata (abfd)->core_command
= _bfd_elfcore_strndup (abfd, note->descdata + 100, 80);
break;
case 336: /* Solaris psinfo_t. */
elf_tdata (abfd)->core_program
= _bfd_elfcore_strndup (abfd, note->descdata + 88, 16);
elf_tdata (abfd)->core_command
= _bfd_elfcore_strndup (abfd, note->descdata + 104, 80);
break;
}
return TRUE;
}
/* Functions for the SPARC ELF linker. */
@ -3451,6 +3480,7 @@ elf32_sparc_reloc_type_class (rela)
elf32_sparc_final_write_processing
#define elf_backend_gc_mark_hook elf32_sparc_gc_mark_hook
#define elf_backend_gc_sweep_hook elf32_sparc_gc_sweep_hook
#define elf_backend_grok_psinfo elf32_sparc_grok_psinfo
#define elf_backend_reloc_type_class elf32_sparc_reloc_type_class
#define elf_backend_can_gc_sections 1