[9] RFR(S): 8158214: Crash with "assert(VM_Version::supports_sse4_1()) failed" if UseSSE < 4 is set
Tobias Hartmann
tobias.hartmann at oracle.com
Tue May 31 12:48:23 UTC 2016
Hi,
please review the following patch:
https://bugs.openjdk.java.net/browse/JDK-8158214
http://cr.openjdk.java.net/~thartmann/8158214/webrev.00/
The VM crashes during stub generation if UseSSE = 3 is set. The problem is that even if SSE 4 is not available or disabled, MacroAssembler::kernel_crc32() emits the 'pinsrd' instruction which is a SSE 4.1 instruction.
The solution is to only emit CRC32 intrinsics if SSE 4.1 is available (the UseSSE > 2 check is not strong enough). I also removed the unnecessary UseSSE >= 4 checks because they are included in the supports_sse4_2() check.
Tested with JPRT and RBT (running).
Thanks,
Tobias
More information about the hotspot-compiler-dev
mailing list