From: John Baldwin Date: Sun, 12 Jun 2016 19:34:51 +0000 (-0700) Subject: Create a pseudo section for the ELF AUXV core dump note on FreeBSD. X-Git-Tag: binutils-2_27~112 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3350c5f5de3d2e62dd9de2a76cf2d5d8728d2600;p=external%2Fbinutils.git Create a pseudo section for the ELF AUXV core dump note on FreeBSD. The procstat AUXV core dump note in FreeBSD consists of 32-bit integer followed by an array of auxiliary vector entries. bfd/ChangeLog: * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PROCSTAT_AUXV notes. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 4822e30..2cf8b27 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,10 @@ 2016-06-24 John Baldwin + * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PROCSTAT_AUXV + notes. + +2016-06-24 John Baldwin + * elf.c (elfcore_grok_note): Remove handling of NT_X86_XSTATE for FreeBSD. Remove case for NT_FREEBSD_THRMISC. (elfcore_grok_freebsd_psinfo): New function. diff --git a/bfd/elf.c b/bfd/elf.c index cfcafaa..cb4de50 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -9663,6 +9663,20 @@ elfcore_grok_freebsd_note (bfd *abfd, Elf_Internal_Note *note) else return TRUE; + case NT_FREEBSD_PROCSTAT_AUXV: + { + asection *sect = bfd_make_section_anyway_with_flags (abfd, ".auxv", + SEC_HAS_CONTENTS); + + if (sect == NULL) + return FALSE; + sect->size = note->descsz - 4; + sect->filepos = note->descpos + 4; + sect->alignment_power = 1 + bfd_get_arch_size (abfd) / 32; + + return TRUE; + } + case NT_X86_XSTATE: if (note->namesz == 8) return elfcore_grok_xstatereg (abfd, note);