[vectorIntrinsics] RFR: 8283413: Add C2 mid-end and x86 back-end implementation for bit REVERSE and REVERSE_BYTES operation [v8]

Paul Sandoz psandoz at openjdk.java.net
Fri Apr 8 17:04:08 UTC 2022


On Fri, 8 Apr 2022 01:40:47 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> Hi All,
>> 
>> Patch includes following changes:-
>> - New C2 IR nodes to support VectorOperations.REVERSE operation.
>> - X86 backend implementation for targets supporting AVX2, AVX512 and GFNI features.
>> 
>> Please find below the performance data of Vector API JMH micros:-
>> 
>> System Configuration:
>> ICX: Intel(R) Xeon(R) Platinum 8380 CPU @ 2.30GHz (40C 2S)
>> CLX: Intel(R) Xeon(R) Platinum 8280 CPU @ 2.70GHz (28C 2S)
>> 
>> ![image](https://user-images.githubusercontent.com/59989778/159196997-fd1ae2ad-37ee-4294-9928-5764707bb456.png)
>> 
>> 
>> 
>> Kindly review and share your feedback.
>> 
>> Regards,
>> Jatin
>
> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
> 
>   8283413: Adding strict constraints for Reverse/ReverseBytes related transformation.

Internal tests on `aarch64` debug builds show this integration causes `*{64, 128, MAX}VectorTests` tests to crash with the same internal error (AFAICT):

...
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/System/Volumes/Data/mesos/work_dir/slaves/c82600aa-2448-475c-8c08-6f02a5b3f3af-S39291/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/4128da6a-70ed-4297-ada9-9dcf07a4eb36/runs/0a4f78a7-fce4-49b5-b1d0-143d8a80fbda/workspace/open/src/hotspot/share/opto/node.hpp:814), pid=10360, tid=42243
#  assert(fl <= max_flags()) failed: invalid node flag
...

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

PR: https://git.openjdk.java.net/panama-vector/pull/182


More information about the panama-dev mailing list