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 <i...@vmfacility.fr> 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