[lworld] RFR: 8279853: [lworld] Multiple issues with speculative type at checkcast

Tobias Hartmann thartmann at openjdk.java.net
Wed Jan 12 07:26:21 UTC 2022


At checkcast, C2 checks if speculative type information is narrower than the type we cast to and if so, uses the speculative type instead. Among other things, this enables scalarization based on profile information (see for example line 4234 in the test).

This change fixes several issues triggered by that optimization and also removes dead code that still assumed that inline types are null-free.

Thanks,
Tobias

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

Commit messages:
 - 8279853: [lworld] Multiple issues with speculative type at checkcast

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

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



More information about the valhalla-dev mailing list