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

Magnus Ihse Bursie ihse at openjdk.org
Mon Nov 27 15:02:13 UTC 2023


On Mon, 27 Nov 2023 10:28:45 GMT, Andrew Haley <aph at openjdk.org> wrote:

>> We have to use this c-compiler option to build out the SVE ABIs (e.g. `svfloat32_t sinfx_u10sve(svfloat32_t input)`) in `libvmath.so`. Without this option, at build time, all the sve related featues like `arm_sve.h / __ARM_FEATURE_SVE` are missing, together with the sve symbols in `libvmath.so` we needed at runtime.  That means at runtime, hotspot cannot find out the sve symbols and the vector operations will fall back to the default java implementation.
>
> That's fine, but we must make sure that SVE is not used by the compiler in any other places. If you've already built on non-SVE and tested the result on both SVE and non-SVE, I'm happy.

You still need to separate out the SVE detection from the libsleef code, and provide a way to enable/disable it from the configure command line. It is not okay to auto-detect if features should be turned on or off by default, but it should always be possible to override.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16234#discussion_r1406291471


More information about the build-dev mailing list