[lworld] RFR: 8257832: [lworld] C2 compilation fails with assert(_base == AryPtr) failed: Not an array pointer

Tobias Hartmann thartmann at openjdk.java.net
Tue Dec 8 11:19:26 UTC 2020


When the array load/store type profile is polluted, it may contradict static array type information and as a result we always trap when using it speculatively. We hit the assert or crash because control/data unexpectedly becomes `top`.

Similar to `Parse::array_store_check()`, we should not use profile information in `Parse::array_addressing` if it contradicts static type information.

Thanks,
Tobias

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

Commit messages:
 - 8257832: [lworld] C2 compilation fails with assert(_base == AryPtr) failed: Not an array pointer

Changes: https://git.openjdk.java.net/valhalla/pull/297/files
 Webrev: https://webrevs.openjdk.java.net/?repo=valhalla&pr=297&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8257832
  Stats: 97 lines in 3 files changed: 69 ins; 17 del; 11 mod
  Patch: https://git.openjdk.java.net/valhalla/pull/297.diff
  Fetch: git fetch https://git.openjdk.java.net/valhalla pull/297/head:pull/297

PR: https://git.openjdk.java.net/valhalla/pull/297


More information about the valhalla-dev mailing list