This set of changes implements multiplication and squaring field operations on the P-384 curve using AArch64 intrinsics. The performance gains from this enhancement yields:
Key pair generation - P-384: +36% Key agreement - P-384: +35% Key pair generation - secP384r1MLKEM1024: +34% KEM decapsulation - secP384r1MLKEM1024: +34% KEM encapsulation - secP384r1MLKEM1024: +35% --------- - [X] I confirm that I make this contribution in accordance with the [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). ------------- Commit messages: - Use ubfiz instruction for low digit and shift-add/sub instruction for high digit - Consolidate registers - Add intrinsics annotation - Merge with master branch - Register management cleanup - Revert conditional assign intrinsics - 8394397: Create AArch64 intrinsics for P-384 field operations Changes: https://git.openjdk.org/jdk/pull/33618/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=33618&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8394397 Stats: 478 lines in 14 files changed: 475 ins; 0 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/33618.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/33618/head:pull/33618 PR: https://git.openjdk.org/jdk/pull/33618
