Request for reviews (XS): 6996240: The BitSet.length method sometimes returns an index+1 value less than that of the highest bit set.

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Nov 2 13:00:39 PDT 2010


Never mind, it is 32 bit execution mode.

Your second webrev is good.

thanks,
Vladimir

Vladimir Kozlov wrote:
> Thank you, Christian
> 
> All registers on sparc are 64 bit and all operations are 64 bit.
> Which instruction produce wrong value? Did you step per instruction in 
> debugger?
> 
> Thanks,
> Vladimir
> 
> Christian Thalinger wrote:
>> http://cr.openjdk.java.net/~twisti/6996240/webrev.01/
>>
>> 6996240: The BitSet.length method sometimes returns an index+1 value 
>> less than that of the highest bit set.
>> Reviewed-by:
>>
>> It's a problem with countLeadingZerosL.  dst is a iRegI but is used as
>> temporary for an iRegL OR value.
>>
>> The fix is to use a second temporary iRegL register for the OR value.
>>
>> Tested with the failing testcase attached to the CR.


More information about the hotspot-compiler-dev mailing list