RFR(XS): 8148353: [linux-sparc] Crash in libawt.so on Linux SPARC

Roland Westrelin roland.westrelin at oracle.com
Mon Feb 22 10:05:37 UTC 2016


Native code is passed an int (in a 64 bit register) which has some bits set in the upper 32 bit half. The native code uses that value for an address computation. That results in a wrong memory access. From a few experiments with code generated by gcc, it seems it expects values to be clean on function entry. The fix cleans the 32 bit value before the native call.

http://cr.openjdk.java.net/~roland/8148353/webrev.00/

Roland.


More information about the hotspot-compiler-dev mailing list