On Fri, 13 Feb 2026 00:10:25 GMT, Xueming Shen <[email protected]> wrote:

> The Incubator Vector API (jdk.incubator.vector) currently uses SLEEF 3.6.1 
> for providing SIMD-accelerated transcendental and elementary math functions 
> (e.g., sin, cos, exp, log, pow, hypot) on non-x86 platforms, (specifically 
> aarch64 and riscv64). 
> 
> This PR upgrades the bundled SLEEF sources used  by JDK from 3.6.1 to v3.9.0. 
> 
> Imported  SLEEF upstream:
> - tag: 3.9.0
> - commit hash: 906ca7512ee483296780a81a21b9ca715d40dfe1
> 
> The update work refreshes the upstream source snapshot and regenerates the 
> SLEEF inline headers currently generated for the Vector API SLEEF platforms.
> 
> Migration steps:
> 
> 1. Imported the upstream SLEEF 3.9.0 source snapshot from the official SLEEF 
> repository.
> 2. Copied the upstream files into the JDK SLEEF subtree, excluding 
> repository/documentation-only files such as `.git`, `.github`, `docs`, and 
> `.nojekyll`, as documented in the local SLEEF README.
> 3. Normalized the imported files according to the existing JDK import 
> process, including whitespace/tab cleanup where needed. See 
> [logs](https://cr.openjdk.org/~sherman/sleef-3.9.0-upstream-import-trace.pdf) 
> for details
> 4. Updated the SLEEF metadata in the JDK README/legal files to record the 
> 3.9.0 tag and exact upstream commit.
> 5. Updated `make/UpdateSleefSource.gmk` for the SLEEF 3.9.0 generation flow, 
> including disabling SLEEF test/SSL/TLFloat pieces that are not needed for 
> generating the JDK inline headers.
> 6. Ran `make update-sleef-source` for the Linux AArch64 and RISC-V cross 
> configurations.
> 7. Verified and checked in the regenerated SLEEF inline headers for the 
> Vector API SLEEF platforms.
> 8. Added a targeted HotSpot IR-framework test that verifies SLEEF-backed 
> Vector API transcendental operations are lowered to the native vector math 
> library call path on supported platforms. The test covers the SLEEF-provided 
> `float` and `double` unary/binary operations.
> 9. Ran clean build and testing, including local Vector API jtreg testing and 
> internal Mach5 tier1/tier2/tier3 validation ([mach5 
> results](https://mach5.us.oracle.com/mdash/jobs/xuemingshen-jdk-8376602-2-20260521-2059-45610732)).
> 10. Ran a local Vector API transcendental microbenchmark comparison using 
> [VectorTranscendentalBenchmark2](https://cr.openjdk.org/~sherman/8376602/VectorTranscendentalBenchmark2.java);
>  the sampled 128-bit macOS AArch64 
> [results](https://cr.openjdk.org/~sherman/vector-transcendental-benchmark2-results.pdf)
>  were broadly performance-neutral to modestly positive for SLEEF 3.9.0.
> 
> ---------
> - [x] I confirm that I ...

This pull request has now been integrated.

Changeset: 185d933b
Author:    Xueming Shen <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/185d933bb9c9020dbc35daf7e664562fda538b5d
Stats:     22343 lines in 168 files changed: 14683 ins; 4988 del; 2672 mod

8376602: [Vector API] Upgrade SLEEF from 3.6.1 to 3.9.0

Reviewed-by: psandoz, fyang, erikj

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

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

Reply via email to