diff options
author | Andreas Arnez <arnez@linux.vnet.ibm.com> | 2015-02-20 10:39:53 +0100 |
---|---|---|
committer | Andreas Krebbel <krebbel@linux.vnet.ibm.com> | 2015-02-20 10:39:53 +0100 |
commit | 4ef9f41a9538c9c7e4e540277e437b137cb64c4c (patch) | |
tree | b339e21e87f344be927981f9f144c90bd6593ad9 /include | |
parent | dc049bf460bb1243aaaa48745bb8df64bbb3e1cd (diff) | |
download | fsf-binutils-gdb-4ef9f41a9538c9c7e4e540277e437b137cb64c4c.zip fsf-binutils-gdb-4ef9f41a9538c9c7e4e540277e437b137cb64c4c.tar.gz fsf-binutils-gdb-4ef9f41a9538c9c7e4e540277e437b137cb64c4c.tar.bz2 |
S390: Support new vector register sections
The IBM z13 has new 128-bit wide vector registers v0-v31, where v0-v15
include the existing 64-bit wide floating point registers. The Linux
kernel presents the vector registers as two additional register sets,
one for the right halves of v0-v15 and another one for the full
registers v16-v31. Thus a new core file may contain two new register
note sections, and this patch adds support to binutils for them.
bfd/
* elf-bfd.h (elfcore_write_s390_vxrs_low): Add prototype.
(elfcore_write_s390_vxrs_high): Likewise.
* elf.c (elfcore_grok_s390_vxrs_low): New function.
(elfcore_grok_s390_vxrs_high): New function.
(elfcore_grok_note): Call them.
(elfcore_write_s390_vxrs_low): New function.
(elfcore_write_s390_vxrs_high): New function.
(elfcore_write_register_note): Call them.
binutils/
* readelf.c (get_note_type): Add NT_S390_VXRS_LOW and
NT_S390_VXRS_HIGH.
include/elf/
* common.h (NT_S390_VXRS_LOW): New macro.
(NT_S390_VXRS_HIGH): Likewise.
Diffstat (limited to 'include')
-rw-r--r-- | include/elf/ChangeLog | 5 | ||||
-rw-r--r-- | include/elf/common.h | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index 99bc4ff..2dc5625 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,8 @@ +2015-02-20 Andreas Arnez <arnez@linux.vnet.ibm.com> + + * common.h (NT_S390_VXRS_LOW): New macro. + (NT_S390_VXRS_HIGH): Likewise. + 2015-01-28 James Bowman <james.bowman@ftdichip.com> * common.h (EM_FT32): Define. diff --git a/include/elf/common.h b/include/elf/common.h index ae7b5f81..70778bf 100644 --- a/include/elf/common.h +++ b/include/elf/common.h @@ -557,6 +557,10 @@ /* note name must be "LINUX". */ #define NT_S390_TDB 0x308 /* S390 transaction diagnostic block */ /* note name must be "LINUX". */ +#define NT_S390_VXRS_LOW 0x309 /* S390 vector registers 0-15 upper half */ + /* note name must be "LINUX". */ +#define NT_S390_VXRS_HIGH 0x30a /* S390 vector registers 16-31 */ + /* note name must be "LINUX". */ #define NT_ARM_VFP 0x400 /* ARM VFP registers */ /* The following definitions should really use NT_AARCH_..., but defined this way for compatibility with Linux. */ |