RFR: 8264957: Type::dual_type array is not aligned with enum TYPES

Xiaohong Gong xgong at openjdk.java.net
Fri Apr 9 10:11:41 UTC 2021

This is a bug fix for [1] which adds a new vector mask type. The new added TYPE `"VectorMask"` is inserted into `enum TYPES`, while the array `"Type::dual_type"` is not updated. This makes the array elements are not aligned with TYPES.

I met the following crash due to this issue when I was working on the masking feature support on panama-vector:
 Internal Error (/home/xiagon01/code/panama-vector/src/hotspot/share/opto/type.hpp:1727), pid=104432, tid=104449
 # assert(_base >= AnyPtr && _base <= KlassPtr) failed: Not a pointer
Adding a value like other vector types for the `"VectorMask"` in the array `"dual_type"` can fix it.

[1] https://bugs.openjdk.java.net/browse/JDK-8262355

Tested with tier1 and jdk:tier3


Commit messages:
 - 8264957: Type::dual_type array is not aligned with enum TYPES

Changes: https://git.openjdk.java.net/jdk/pull/3410/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3410&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8264957
  Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3410.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3410/head:pull/3410

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

More information about the hotspot-compiler-dev mailing list