s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW INDICATION
commit2cb8a68d375450ab7be372d90e2ddf5a2a832cdc
authorDavid Hildenbrand <david@redhat.com>
Mon, 21 Oct 2019 08:57:14 +0000 (21 10:57 +0200)
committerCornelia Huck <cohuck@redhat.com>
Mon, 21 Oct 2019 15:34:12 +0000 (21 17:34 +0200)
treeaf6288a0107ea04ea08293535e2cec814e95896b
parent23e797749fff754b8a136ee37607c6448b06cfca
s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW INDICATION

Testing this, there seems to be something messed up. We are dealing with
unsigned numbers. "Each operand is treated as an unsigned binary integer."
Let's just implement as written in the PoP:

"A subtraction is performed by adding the contents of
 the second operand with the bitwise complement of
 the third operand along with a borrow indication from
 the rightmost bit position of the fourth operand and
 the result is placed in the first operand."

We can reuse gen_ac2_i64().

Fixes: 48390a7c2716 ("s390x/tcg: Implement VECTOR SUBTRACT WITH BORROW INDICATION")
Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20191021085715.3797-6-david@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
target/s390x/translate_vx.inc.c