On Tue, 21 Mar 2023 06:11:57 GMT, Joe Darcy <da...@openjdk.org> wrote:

> Last but not least, a port of fdlibm IEEEremainder from C to Java. I plan to 
> write some more implementation-specific tests around decision points in the 
> FDLIBM algorithm, but I wanted to get the bulk of the changes out for review 
> first.
> 
> Note that since IEEEremainder was the last native method in StrictMath.java, 
> the StrictMath.c file needed to be deleted (or modified) since StrictMath.h 
> was no longer generated as part of the build. (StrictMath.c was one of the 
> file deleted as part of JDK-8302801).
> 
> For testing, Mach 5 tier 1 through 3 were successful (other than an unrelated 
> test failure that was problem listed) and the exhaustive test was locally run 
> and passed with "16, 16" to increase the testing density.

src/java.base/share/classes/java/lang/FdLibm.java line 3331:

> 3329: 
> 3330:             if (hp <= 0x7fdf_ffff) {  // now x < 2p
> 3331:                 x = __ieee754_fmod(x, p + p);

if (hp <= 0x7fdf_ffff) {
                x = __ieee754_fmod(x, p + p);  // now x < 2p

src/java.base/share/classes/java/lang/FdLibm.java line 3372:

> 3370:             // purge off exception values
> 3371:             if((hy | ly) == 0 || (hx >= 0x7ff0_0000)||       // y = 0, 
> or x not finite
> 3372:                ((hy | ((ly | -ly) >> 31)) > 0x7ff0_0000))    // or y is 
> NaN

Suggestion:

               ((hy | ((ly | -ly) >>> 31)) > 0x7ff0_0000))    // or y is NaN, 
unsigned shift

test/jdk/java/lang/StrictMath/FdlibmTranslit.java line 2652:

> 2650:             /* purge off exception values */
> 2651:             if((hy|ly)==0||(hx>=0x7ff00000)||       /* y=0,or x not 
> finite */
> 2652:                ((hy|((ly|-ly)>>31))>0x7ff00000))     /* or y is NaN */

Suggestion:

               ((hy|((ly|-ly)>>>31))>0x7ff00000))     /* or y is NaN */

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

PR Review Comment: https://git.openjdk.org/jdk/pull/13113#discussion_r1149070401
PR Review Comment: https://git.openjdk.org/jdk/pull/13113#discussion_r1149074081
PR Review Comment: https://git.openjdk.org/jdk/pull/13113#discussion_r1149058824

Reply via email to