RFR: 8355585: Aarch64: Add aarch64 backend for Float16 vector operations

Hao Sun haosun at openjdk.org
Mon May 12 03:50:52 UTC 2025


On Wed, 7 May 2025 14:14:14 GMT, Bhavana Kilambi <bkilambi at openjdk.org> wrote:

> This patch adds aarch64 backend (both Neon and SVE) for FP16 vector operations - add, mul, sub, div, min, max, sqrt and fma.
> 
> Testing:
> JTREG tests - hotspot_all, jdk (tier 1-3) and langtools (tier 1) pass on aarch64 which also includes the JTREG test to test the FP16 vector operations - `test/hotspot/jtreg/compiler/vectorization/TestFloat16VectorOperations.java`

src/hotspot/cpu/aarch64/aarch64_vector_ad.m4 line 225:

> 223:       case Op_MaxVHF:
> 224:       case Op_SqrtVHF:
> 225:         // FEAT_FP16 is enabled if both "fphp" and "asimdhp" features are supported.

It's an unary op and we should add it to `is_vector_unary_op_name` in `adlc/dfa.cpp`.
See the related code in the previous patch https://github.com/openjdk/jdk/pull/9534

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25096#discussion_r2083771683


More information about the hotspot-compiler-dev mailing list