On Thu, 4 Nov 2021 15:56:46 GMT, Paul Sandoz <psan...@openjdk.org> wrote:
>> This PR improves the performance of vector operations that accept masks on >> architectures that support masking in hardware, specifically Intel AVX512 >> and ARM SVE. >> >> On architectures that do not support masking in hardware the same technique >> as before is applied to most operations, specifically composition using >> blend. >> >> Masked loads/stores are a special form of masked operation that require >> additional care to ensure out-of-bounds access throw exceptions. The range >> checking has not been fully optimized and will require further work. >> >> No API enhancements were required and only a few additional tests were >> needed. > > Paul Sandoz has updated the pull request incrementally with two additional > commits since the last revision: > > - Merge pull request #2 from nsjian/vector-conversion-fix > > AArch64: Incorrect SVE double to int and float to long vector conversion > - Incorrect double to int and float to long vector conversion > > Like JDK-8276151, SVE vector double to int and float to long > conversions have similar issue. According to Java language > specification [1], we should convert double/float to > integer/long directly, instead of converting to long/int and then > narrowing/extending to target types. Test cases will be updated in > JDK-8276151. > > [1] https://docs.oracle.com/javase/specs/jls/se17/html/jls-5.html#jls-5.1.3 Marked as reviewed by ngasson (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/5873