RFR: 8265956: JVM crashes when matching LShiftVB Node [v2]

Jie Fu jiefu at openjdk.java.net
Thu Apr 29 09:18:53 UTC 2021


On Wed, 28 Apr 2021 09:52:22 GMT, Wang Huang <whuang at openjdk.org> wrote:

>> It is fount that the rule `match(Set dst (LShiftVB src shift))` is missing on many cpus, such like `aarch64` and `x86`. It is this reason that JVM will crash under `JDK-8265956`'s test case. In this commit, I :
>> * show the crash case `TestVectorShuffleIotaShort`
>> * solve the issue on `aarch64` and `x86` by adding the rule. 
>> * test after fixing on tire1~3
>> 
>> Thank you for your review. Any suggestion is welcome. 
>>                          Wang Huang
>
> Wang Huang has updated the pull request incrementally with one additional commit since the last revision:
> 
>   add m4 file

test/hotspot/jtreg/compiler/vectorapi/TestVectorShuffleIotaShort.java line 44:

> 42:     static short[] as = {87, 65, 78, 71, 72, 69, 82, 69};
> 43: 
> 44:     public static void testShuffleS() {

IMO, this test is not enough since the assembly code is not easy to get reviewed.

So I suggest to improve your test:
 1) Test as many match-patterns you added as possible
 2) Verify the results in your tests

Thanks.

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

PR: https://git.openjdk.java.net/jdk/pull/3747


More information about the hotspot-compiler-dev mailing list