For below Java code, which can't be auto-vectorized:
public static void accessArrayConstants(int[] array) {
for (int j = 0; j < 1024; j++) {
array[0]++;
array[1]++;
}
}
Current C2 unrolls the loop to 8 times on X86 and 4 times on AArch64, which is limited by architecture's vector size. Get better performance, we should unroll more until reaching the unroll limitation.
public static void accessArrayConstants(int[] array) {
for (int j = 0; j < 1024; j++) {
array[0]++;
array[1]++;
}
}
Current C2 unrolls the loop to 8 times on X86 and 4 times on AArch64, which is limited by architecture's vector size. Get better performance, we should unroll more until reaching the unroll limitation.
- relates to
-
JDK-8189064 Crash with compiler/codegen/*Vect.java on Solaris-sparc
-
- Closed
-