RFR: 8258134: assert(size == calc_size) failed: incorrect size calculation on x86_32 with AVX512 machines
Jie Fu
jiefu at openjdk.java.net
Sat Dec 12 00:00:09 UTC 2020
Hi all,
Two vector api tests crashed on x86_32 with AVX512 machines due to this assert [1].
The reason is that 'calc_size' is incorrect.
But there is no need to calculate 'calc_size' manually at all since the result [2] is actually never used by the VM.
Also, it is really hard to maintain the calculation logic for various hardwares and configurations.
And it may be easily broken again in the future with more and more complicated instructions & configurations.
So it would be better to remove the calculation and the assert, which is safe and already done for x86_64 [3].
The fix just follows what is done for x86_64.
Thanks.
Best regards,
Jie
[1] https://github.com/openjdk/jdk/blob/master/src/hotspot/cpu/x86/x86_32.ad#L1016
[2] https://github.com/openjdk/jdk/blob/master/src/hotspot/cpu/x86/x86_32.ad#L1059
[3] https://github.com/openjdk/jdk/blob/master/src/hotspot/cpu/x86/x86_64.ad#L1042
-------------
Commit messages:
- 8258134: assert(size == calc_size) failed: incorrect size calculation on x86_32 with AVX512 machines
Changes: https://git.openjdk.java.net/jdk/pull/1753/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1753&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8258134
Stats: 36 lines in 1 file changed: 1 ins; 29 del; 6 mod
Patch: https://git.openjdk.java.net/jdk/pull/1753.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/1753/head:pull/1753
PR: https://git.openjdk.java.net/jdk/pull/1753
More information about the hotspot-compiler-dev
mailing list