[vectorIntrinsics] RFR: 8267375: Aarch64: JVM crashes with option -XX:PrintIdealGraphLevel=3 on SVE backend
Wang Huang
whuang at openjdk.java.net
Wed May 19 09:32:11 UTC 2021
Reason:
operand pRegGov()
%{
constraint(ALLOC_IN_RC(gov_pr));
match(RegVectMask);
op_cost(0);
format %{ %}
interface(REG_INTER);
%}
if `pRegGov` is used as a `TEMP`, like :
instruct insertB_small(vReg dst, vReg src, iRegIorL2I val, immI idx, pRegGov pTmp, rFlagsReg cr)
%{
predicate(UseSVE > 0 && n->as_Vector()->length() <= 32 &&
n->bottom_type()->is_vect()->element_basic_type() == T_BYTE);
match(Set dst (VectorInsert (Binary src val) idx));
effect(TEMP_DEF dst, TEMP pTmp, KILL cr); // here
It will have the type `Type::VectorMask` in `MachTempNode` which is generated from `Expand`. However, we miss `Type::VectorMask` in `Type::category()`.
We can fix this bug simply by adding `case Type::VectorMask` in `Type::category()`.
-------------
Commit messages:
- fix trailing whitespace
- fix style errors
- 8267375: Aarch64: JVM crashes with option -XX:PrintIdealGraphLevel=3 on SVE backend
Changes: https://git.openjdk.java.net/panama-vector/pull/85/files
Webrev: https://webrevs.openjdk.java.net/?repo=panama-vector&pr=85&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8267375
Stats: 64 lines in 2 files changed: 64 ins; 0 del; 0 mod
Patch: https://git.openjdk.java.net/panama-vector/pull/85.diff
Fetch: git fetch https://git.openjdk.java.net/panama-vector pull/85/head:pull/85
PR: https://git.openjdk.java.net/panama-vector/pull/85
More information about the panama-dev
mailing list