Need reviewer: JDK 8 CR for Support Integer overflow

Joe Darcy joe.darcy at
Fri Feb 3 17:07:59 UTC 2012

On 02/03/2012 06:44 AM, Florian Weimer wrote:
> * Roger Riggs:
>> The boolean expression can be refactored. (Only bit-31 is significant).
>> But it becomes pretty inscrutable.
>> (x ^ r)<   0&&   (x ^ y)>= 0  becomes
>> (x ^ r)<   0&&   (~(x ^ y))<   0  becomes
>> ((x ^ r)&   ~(x ^ y))<   0
> That's what I got in my second attempt, too. It doesn't result in a
> longer dependency chain because the left side of the&  is two operations
> deep, too.  Therefore, this version should be faster (at least after
> compilation), independent of the input arguments.

These sorts of concerns and lovingly (and laboriously!) detailed to Hank 
Warren's bit-twiddling tome "Hacker's Delight" 

Roger's initial code used one of the recommend idioms from that source.  
We should stick with those idioms unless there is a good reason not to.


More information about the core-libs-dev mailing list