RFR: JDK-8302027: Port fdlibm trig functions (sin, cos, tan) to Java

Joe Darcy darcy at openjdk.org
Wed Mar 1 06:03:52 UTC 2023


Last and certainly not least in the port of FDLIBM to Java, the transcendental methods for sin, cos, and tan.

Some more tests are to be written in the StrictMath directory to verify that the StrictMath algorihtm for sin/cos/tan is being used rather than a different one. However, I wanted to get the rest of the change out for review first.

The sin/cos/tan methods are grouped together since they share the same argument reduction logic. Argument reduction is the process of mapping an argument of a function to an argument in a restricted range (and possibly returning some function of the reduced argument). For sin, cos, and tan, since they are fundamentally periodic with respect to a multiple of pi, argument reduction is done to find the remainder of the original argument with respect to pi/2.

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

Commit messages:
 - Appease jcheck.
 - Add tests.
 - Checkpoint Fdlibm.java
 - Merge branch 'master' into JDK-8302027
 - Updates.
 - Initial port attempt for sin, cos, tan; not working yet.

Changes: https://git.openjdk.org/jdk/pull/12800/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=12800&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8302027
  Stats: 1976 lines in 6 files changed: 1954 ins; 12 del; 10 mod
  Patch: https://git.openjdk.org/jdk/pull/12800.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/12800/head:pull/12800

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


More information about the core-libs-dev mailing list