On Sat, 29 Mar 2025 00:58:59 GMT, Vladimir Ivanov <vliva...@openjdk.org> wrote:
> Build and use SLEEF library as a backend implementation for Vector API > trigonometric functions on macosx-aarch64 platform. > > It improves raw throughput and eliminates GC overhead of non-intrinsified > Vector API operation. > > PR includes build changes and libsleef sources relocation from > `src/jdk.incubator.vector/linux/native/` to > `src/jdk.incubator.vector/share/native/`. > > Once libsleef library is present, existing code in > `stubGenerator_aarch64.cpp` successfully links at JVM startup. > > Testing: hs-tier1 - hs-tier4, microbenchmarks Is leaving the sources of sleef in share/native the right thing to do? That would implicitly mean to any developers that it's shared code for all currently supported operating systems: Windows, macOS, Linux and AIX, which may be rather confusing if it's only meant to be used on specific platforms. But I can also see why this was done, since duplication of sleef code for each platform would be pretty brutal, so there isn't an easy solution to this. I guess Windows/ARM64 could use it in the future, is that something that is intended? Perhaps that could be an excuse for leaving it under the share directory ------------- PR Comment: https://git.openjdk.org/jdk/pull/24306#issuecomment-2763887362