8273332: [Vector API] C2 fails to check whether the rotate operation is directly supported by the target ISA after JDK-8271366 #5364
+10
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi all,
A lot of Vector API tests from Panama's vectorIntrinsics+mask branch crash [1].
This is because
arch_supports_vector()
fails to check whether the rotate operation is directly supported by the target ISA after JDK-8271366.It can be fixed by adding
Matcher::match_rule_supported_vector
check ininline_vector_broadcast_int()
andinline_vector_nary_operation()
to prevent generation of unsupported rotate operation IR patterns.Maybe it's hard to reproduce with the jdk-repo, but the bug still be there in theory.
So it would be better to fix it in the jdk repo.
Testing:
-ea -esa -Xcomp -XX:CompileThreshold=100
, the crash reported in [1] gets fixed with Panama's vectorIntrinsics+mask branchThanks.
Best regards,
Jie
[1] https://bugs.openjdk.java.net/browse/JDK-8273205
Progress
Issue
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/5364/head:pull/5364
$ git checkout pull/5364
Update a local copy of the PR:
$ git checkout pull/5364
$ git pull https://git.openjdk.java.net/jdk pull/5364/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 5364
View PR using the GUI difftool:
$ git pr show -t 5364
Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/5364.diff