RFR: 8312425: [vectorapi] AArch64: Optimize vector math operations with SLEEF

Hamlin Li mli at openjdk.org
Thu Mar 14 08:55:51 UTC 2024


Hi,
Can you help to review this patch?
Thanks

This is a continuation of work based on [1] by @XiaohongGong, most work was done in that pr. In this new pr, just rebased the code in [1], then added some minor changes (renaming of calling method, add libsleef as extra lib in CI cross-build on aarch64 in github workflow); I aslo tested the combination of following scenarios:
* at build time
  * with/without sleef
  * with/without sve support 
* at runtime
  * with/without sleef
  * with/without sve support 

[1] https://github.com/openjdk/jdk/pull/16234

## Regression Test
* test/jdk/jdk/incubator/vector/
* test/hotspot/jtreg/compiler/vectorapi/

## Performance Test
Previously, @XiaohongGong has shared the data: https://github.com/openjdk/jdk/pull/16234#issuecomment-1767727028

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

Commit messages:
 - copyright date
 - distinguish call names between non-scalable and scalable(e.g. sve)
 - add libsleef as extra lib in CI cross-build on aarch64
 - Merge branch 'master' into sleef-aarch64
 - Fix potential attribute issue
 - Remove -fvisibility in makefile and add the attribute in source code
 - Add "--with-libsleef-lib" and "--with-libsleef-include" options
 - Separate neon and sve functions into two source files
 - Rename vmath to sleef in configure
 - Address review comments in build system
 - ... and 3 more: https://git.openjdk.org/jdk/compare/de428daf...55b118d9

Changes: https://git.openjdk.org/jdk/pull/18294/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=18294&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8312425
  Stats: 600 lines in 23 files changed: 548 ins; 1 del; 51 mod
  Patch: https://git.openjdk.org/jdk/pull/18294.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/18294/head:pull/18294

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


More information about the build-dev mailing list