It's thrown exactly when (x >> 32) happens to be the Integer.MIN_VALUE, and then its absolute value is negative.