[aarch64-port-dev ] AArch64: vectorization fails RSA crypto tests
Andrew Haley
aph at redhat.com
Mon Jun 15 16:21:10 UTC 2015
java.math.BigInteger::add([I[I)[I gets miscompiled. There is a
ldr q16, [x17,x10,lsl #4]
which should be a
ldr q16, [x17,x10]
Andrew.
diff -r 6217fd2c767b src/cpu/aarch64/vm/assembler_aarch64.hpp
--- a/src/cpu/aarch64/vm/assembler_aarch64.hpp Fri Jun 12 16:09:45 2015 +0100
+++ b/src/cpu/aarch64/vm/assembler_aarch64.hpp Mon Jun 15 17:16:58 2015 +0100
@@ -491,6 +491,11 @@
i->rf(_index, 16);
i->f(_ext.option(), 15, 13);
unsigned size = i->get(31, 30);
+ if (i->get(26, 26) && i->get(23, 23)) {
+ // SIMD Q Type - Size = 128 bits
+ assert(size == 0, "bad size");
+ size = 0b100;
+ }
if (size == 0) // It's a byte
i->f(_ext.shift() >= 0, 12);
else {
More information about the aarch64-port-dev
mailing list