[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v1 0/6] s390x/tcg: Vector instruction fixes
From: |
David Hildenbrand |
Subject: |
[PATCH v1 0/6] s390x/tcg: Vector instruction fixes |
Date: |
Fri, 18 Oct 2019 18:10:38 +0200 |
Ivan reported that a simple
$ go get -v -d github.com/FactomProject/factom
Will result in errors when vector instructions are in use. Turns out
golang makes excessive use of vector instructions, e.g., for crypto, hashes
but also basic math.
I tracked the involved vector instructions and started writing more
tests for them (will upstream them once they are in a better shape). Turns
out there are quite some issues remaining. golang uses instructions not
yet used by the kernel or by glibc.
With these patches, "go get" works again. It wouldn't surprise me if there
are more BUGs in the vector instructions. Will continue writing more tests.
Cc: Ivan Warren <address@hidden>
David Hildenbrand (6):
s390x/tcg: Fix VECTOR MULTIPLY LOGICAL ODD
s390x/tcg: Fix VECTOR MULTIPLY AND ADD *
s390x/tcg: Fix VECTOR SHIFT RIGHT ARITHMETIC BY BYTE
s390x/tcg: Fix VECTOR SUBTRACT COMPUTE BORROW INDICATION
s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW INDICATION
s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW COMPUTE BORROW INDICATION
target/s390x/helper.h | 2 -
target/s390x/translate_vx.inc.c | 78 +++++++++++++++++++++++++--------
target/s390x/vec_int_helper.c | 32 ++++----------
3 files changed, 68 insertions(+), 44 deletions(-)
--
2.21.0
- [PATCH v1 0/6] s390x/tcg: Vector instruction fixes,
David Hildenbrand <=
- [PATCH v1 2/6] s390x/tcg: Fix VECTOR MULTIPLY AND ADD *, David Hildenbrand, 2019/10/18
- [PATCH v1 3/6] s390x/tcg: Fix VECTOR SHIFT RIGHT ARITHMETIC BY BYTE, David Hildenbrand, 2019/10/18
- [PATCH v1 1/6] s390x/tcg: Fix VECTOR MULTIPLY LOGICAL ODD, David Hildenbrand, 2019/10/18
- [PATCH v1 5/6] s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW INDICATION, David Hildenbrand, 2019/10/18
- [PATCH v1 4/6] s390x/tcg: Fix VECTOR SUBTRACT COMPUTE BORROW INDICATION, David Hildenbrand, 2019/10/18