Request for review (XS): 7027232: JSR 292: wrong numeric value returned by MH on solaris-sparc

Christian Thalinger christian.thalinger at oracle.com
Thu Mar 17 02:24:15 PDT 2011


On Mar 15, 2011, at 6:22 PM, Vladimir Kozlov wrote:
> Christian,
> 
> We don't support little-endian SPARC, why add a code which will never be executed?

I thought to be on the safe side if anyone ever wants to support it.  Anyway, I removed it and updated the webrev.

-- Christian

> 
> On side note (RFE): we should officially drop v8 support (C2 does not support already, only C1). There are already several places where we use stx/ldx without check that it is v9 (yes, we still have an assert which is fine). Also std/ldd is emulated on modern SPARC and so is very slow.
> 
> Thanks,
> Vladimir
> 
> Christian Thalinger wrote:
>> http://cr.openjdk.java.net/~twisti/7027232/
>> 7027232: JSR 292: wrong numeric value returned by MH on solaris-sparc
>> Reviewed-by:
>> After 7018378 one of the tests of java/dyn/MethodHandlesTest fails on
>> 32-bit SPARC.  st_long uses STD on 32-bit SPARC and the LSW and MSW
>> bits are not moved to the proper registers resulting in a wrong
>> result.
>> The fix is to use the correct registers for 32-bit big-endian and
>> little-endian (just in case) SPARC.
>> src/cpu/sparc/vm/methodHandles_sparc.cpp




More information about the hotspot-compiler-dev mailing list