RFR: 8353217: Build libsleef on macos-aarch64
    Vladimir Ivanov 
    vlivanov at openjdk.org
       
    Mon Mar 31 21:57:07 UTC 2025
    
    
  
On Mon, 31 Mar 2025 12:27:23 GMT, Magnus Ihse Bursie <ihse at 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
>
> Instead of trying to guide you how to fix this, I made the unification of all libsleef stanzas myself. It is available here:
> 
> https://github.com/openjdk/jdk/commit/04feadda561b2f7a6afff440ab5b4e188361c048
> 
> That commit assumes that `vector_math_sve.c`  should have `$(SVE_CFLAGS)` on mac as well as on linux. If that is not correct, then it needs to be adjusted.
Thanks a lot, @magicus!
> That commit assumes that vector_math_sve.c should have $(SVE_CFLAGS) on mac as well as on linux. If that is not correct, then it needs to be adjusted.
As of now, Apple Silicon doesn't support SVE/SVE2, so I intentionally excluded SVE support on macosx-aarch64. What would be the best way to exclude `vector_math_sve.c` on macosx-aarch64?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/24306#issuecomment-2767501215
    
    
More information about the hotspot-dev
mailing list