]> git.ipfire.org Git - thirdparty/glibc.git/commit
S390: Extend structs La_s390_regs / La_s390_retval with vector-registers.
authorStefan Liebler <stli@linux.vnet.ibm.com>
Fri, 1 Apr 2016 12:11:10 +0000 (14:11 +0200)
committerMike Frysinger <vapier@gentoo.org>
Mon, 4 Apr 2016 19:32:14 +0000 (15:32 -0400)
commit4376bd3ace8345f6eb0bfcd1a9d9399b917e8616
tree277a0d84f1c0bd83260e249656a3a86d84da679f
parentb392e329bc0051a760ca3a5e8c78ff8f2d10f2b8
S390: Extend structs La_s390_regs / La_s390_retval with vector-registers.

Starting with z13, vector registers can also occur as argument registers.
Thus the passed input/output register structs for
la_s390_[32|64]_gnu_plt[enter|exit] functions should reflect those new
registers. This patch extends these structs La_s390_regs and La_s390_retval
and adjusts _dl_runtime_profile() to handle those fields in case of
running on a z13 machine.

(picked from upstream commit 5cdd1989d1d2f135d02e66250f37ba8e767f9772)

ChangeLog:

* sysdeps/s390/bits/link.h: (La_s390_vr) New typedef.
(La_s390_32_regs): Append vector register lr_v24-lr_v31.
(La_s390_64_regs): Likewise.
(La_s390_32_retval): Append vector register lrv_v24.
(La_s390_64_retval): Likeweise.
* sysdeps/s390/s390-32/dl-trampoline.h (_dl_runtime_profile):
Handle extended structs La_s390_32_regs and La_s390_32_retval.
* sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_profile):
Handle extended structs La_s390_64_regs and La_s390_64_retval.

(cherry picked from commit 0eb234232eaf925fe4dca3bd60a3e1b4a7ab2882)
sysdeps/s390/bits/link.h
sysdeps/s390/s390-32/dl-trampoline.h
sysdeps/s390/s390-64/dl-trampoline.h