[aarch64-port-dev ] RFR(S): 8243240: AArch64: Add support for MulVB
Yang Zhang
Yang.Zhang at arm.com
Fri Apr 24 06:01:28 UTC 2020
Hi,
Could you please help to review this patch?
JBS: https://bugs.openjdk.java.net/browse/JDK-8243240
Webrev: http://cr.openjdk.java.net/~yzhang/8243240/webrev.00/
In this patch, the missing MulVB support for AArch64 is added.
Testing: tier1
Test case:
public static void mulvb(byte[] a, byte[] b, byte[] c) {
for (int i = 0; i < a.length; i++) {
c[i] = (byte)(a[i] * b[i]);
}
}
Assembly generated by C2:
0x0000ffffacafdbac: ldr q17, [x15, #16]
0x0000ffffacafdbb0: ldr q16, [x14, #16]
0x0000ffffacafdbb4: mul v16.16b, v16.16b, v17.16b
0x0000ffffacafdbbc: str q16, [x11, #16]
Performance:
JMH test case is attached in JBS.
Before:
Benchmark (size) Mode Cnt Score Error Units
TestVect.testVectMulVB 1024 avgt 5 0.952 0.005 us/op
After:
Benchmark (size) Mode Cnt Score Error Units
TestVect.testVectMulVB 1024 avgt 5 0.110 0.001 us/op
Regards
Yang
More information about the hotspot-compiler-dev
mailing list