RFR: JDK-8301205: Port fdlibm log10 to Java
Joe Darcy
darcy at openjdk.org
Fri Jan 27 07:31:17 UTC 2023
On Fri, 27 Jan 2023 06:52:31 GMT, Joe Darcy <darcy at 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
More information about the core-libs-dev
mailing list