]> git.ipfire.org Git - thirdparty/valgrind.git/commit
Bug 444242 - s390x: Sign-extend "relative long" offset in EXRL
authorAndreas Arnez <arnez@linux.ibm.com>
Fri, 22 Oct 2021 17:55:12 +0000 (19:55 +0200)
committerAndreas Arnez <arnez@linux.ibm.com>
Thu, 28 Oct 2021 13:08:20 +0000 (15:08 +0200)
commitb77dbefe72e4a5c7bcf1576a02c909010bd56991
tree626de913eb5322fc7b0876088afef092f5cb5a3b
parent0cf05f82d4fb9b34ddea7de6932231bc5796e66a
Bug 444242 - s390x: Sign-extend "relative long" offset in EXRL

In s390_irgen_EXRL, the offset is zero-extended instead of sign-extended,
typically causing Valgrind to crash when a negative offset occurs.

Fix this with a new helper function that calculates a "relative long"
address from a 32-bit offset.  Replace other calculations of "relative
long" addresses by invocations of this function as well.  And for
consistency, do the same with "relative" (short) addresses.
NEWS
VEX/priv/guest_s390_toIR.c
none/tests/s390x/exrl.c
none/tests/s390x/exrl.stdout.exp