From c0d38b0ec6756de6a0b68477e47bb8619eef2262 Mon Sep 17 00:00:00 2001 From: Christos Zoulas Date: Wed, 12 Jun 2019 14:35:04 +0100 Subject: [PATCH] Add support for NetBSD/sh3 core reg sections to readelf. PR 24665 * readelf.c (get_netbsd_elfcore_note_type): Add support for SH core notes. --- binutils/ChangeLog | 6 ++++++ binutils/readelf.c | 17 +++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 7bfa6d1..2d80604 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,5 +1,11 @@ 2019-06-12 Christos Zoulas + PR 24665 + * readelf.c (get_netbsd_elfcore_note_type): Add support for SH + core notes. + +2019-06-12 Christos Zoulas + PR 24664 * readelf.c (get_netbsd_elfcore_note_type): Add support for NetBSD auxv notes. diff --git a/binutils/readelf.c b/binutils/readelf.c index 5e970bb..4ed1ba1 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -18168,6 +18168,23 @@ get_netbsd_elfcore_note_type (Filedata * filedata, unsigned e_type) } break; + /* On SuperH, PT_GETREGS == mach+3 and PT_GETFPREGS == mach+5. + There's also old PT___GETREGS40 == mach + 1 for old reg + structure which lacks GBR. */ + case EM_SH: + switch (e_type) + { + case NT_NETBSDCORE_FIRSTMACH + 1: + return _("PT___GETREGS40 (old reg structure)"); + case NT_NETBSDCORE_FIRSTMACH + 3: + return _("PT_GETREGS (reg structure)"); + case NT_NETBSDCORE_FIRSTMACH + 5: + return _("PT_GETFPREGS (fpreg structure)"); + default: + break; + } + break; + /* On all other arch's, PT_GETREGS == mach+1 and PT_GETFPREGS == mach+3. */ default: -- 2.7.4