[jdk17] RFR: 8269568: JVM crashes when running VectorMask query tests
Jie Fu
jiefu at openjdk.java.net
Tue Jun 29 11:19:03 UTC 2021
On Tue, 29 Jun 2021 08:56:44 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:
> This is a follow-up patch for [1]. When we are trying to add the VectorMask query implementation for Arm NEON, we found the jtreg tests for `VectorMask.trueCount/firstTrue/lastTrue` is not effective. The tests failure cannot be reported as expected. The main reason is that the Vector API methods are not hot enough to be compiled by C2 compiler. Wrap the main test codes inside a loop can make the tests effective.
>
> With the tests taking effect, we can see a JVM crash due to the following assertion:
>
> vector/src/hotspot/share/opto/vectornode.hpp:879), pid=168241, tid=168257
> # Error: assert(mask->Opcode() == Op_VectorStoreMask) failed
>
> The mask input might be other vector nodes like `"LoadVectorNode"`, since there is an optimization for `"VectorStoreMask"`:
>
> VectorStoreMask (VectorLoadMask value) ==> value
>
> Changing the code to check whether its element basic type is `"T_BOOLEAN"` is more reasonable.
>
> [1] https://bugs.openjdk.java.net/browse/JDK-8256973
The improved tests also find more bugs of vector mask operations on x86.
Would you like to fix them together?
-------------
PR: https://git.openjdk.java.net/jdk17/pull/168
More information about the hotspot-compiler-dev
mailing list