RFR: 6506405: Math.abs(float) is slow [v2]

Uwe Schindler uschindler at openjdk.java.net
Thu Jul 8 07:08:50 UTC 2021


On Thu, 8 Jul 2021 01:05:16 GMT, Brian Burkhalter <bpb at openjdk.org> wrote:

>> Please consider this change to make the `float` and `double` versions of `java.lang.Math.abs()` branch-free.
>
> Brian Burkhalter has updated the pull request incrementally with one additional commit since the last revision:
> 
>   6506405: Add comments, use new consts for masking

I am a bit confused about the double constant being an int.

src/java.base/share/classes/jdk/internal/math/DoubleConsts.java line 80:

> 78:      * significand fields) of a {@code double}.
> 79:      */
> 80:     public static final int     MAG_BIT_MASK = 0x7FFFFFFF;

Why is this an int in the DoubleConst class? It now differs also from previous patch, value is different, too.

I wonder why the asserts don't catch this!

-------------

Changes requested by uschindler (Author).

PR: https://git.openjdk.java.net/jdk/pull/4711


More information about the core-libs-dev mailing list