On Fri, 27 Jan 2023 06:52:31 GMT, Joe Darcy <da...@openjdk.org> wrote:

> Restarting the port of FDLIBM to Java with the log10 method.
> 
> There are two port, the first a near-transliteration from C port to use as a 
> test reference in
> 
> test/jdk/java/lang/StrictMath/FdlibmTranslit.java
> 
> and a more idiomatic Java port in 
> 
> src/java.base/share/classes/java/lang/FdLibm.java
> 
> First I debug the FdlibmTranslit port by running it against the C version. 
> Once that is working, I copy the port into the java.lang.FdLibm.java and do a 
> series of transformation to get the code closer to usual JDK style.

PS The C file used as the basis of the port is

src/java.base/share/native/libfdlibm/e_log10.c

One difference to highlight between the original C and transliteration port is 
the line

i  = ((unsigned)k&0x80000000)>>31; // C version
vs
i  = (k&0x80000000)>>>31; // unsigned shift

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

PR: https://git.openjdk.org/jdk/pull/12242

Reply via email to