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

Wang Huang whuang at openjdk.java.net
Thu Apr 29 09:32:50 UTC 2021


On Thu, 29 Apr 2021 09:01:29 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:

>> src/hotspot/cpu/aarch64/aarch64_neon.ad line 5292:
>> 
>>> 5290:             n->as_Vector()->length() == 8);
>>> 5291:   match(Set dst (LShiftVB src (LShiftCntV shift)));
>>> 5292:   match(Set dst (LShiftVB src shift));
>> 
>> Does it make sense if changing the mid-end codes to make sure the immediate shift is broadcasted to a vector?
>
> This could avoid fixing the missing rules for all related architecture.

`x86` misses the rule `match(Set dst (LShiftVB src (LShiftCntV imm))); `. If we choose to fix it by adding IR `LShiftCntV`.  Anyway,  adding a `LShiftCntV` here may be more clear. I will refact the code.

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

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


More information about the hotspot-compiler-dev mailing list