RFR: 8331885: C2: meet between unloaded and speculative types is not symmetric

Vladimir Ivanov vlivanov at openjdk.org
Wed May 15 13:57:35 UTC 2024


`TypeInstPtr::xmeet_unloaded` computes the MEET of two InstPtrs when at least one is unloaded, but doesn't preserve speculative part if one is present. It causes the corresponding assert to fail. 

Proposed fix unconditionally keeps speculative part. 

Testing: hs-tier1 - hs-tier4

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

Commit messages:
 - Fix

Changes: https://git.openjdk.org/jdk/pull/19249/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19249&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8331885
  Stats: 20 lines in 3 files changed: 12 ins; 0 del; 8 mod
  Patch: https://git.openjdk.org/jdk/pull/19249.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19249/head:pull/19249

PR: https://git.openjdk.org/jdk/pull/19249


More information about the hotspot-compiler-dev mailing list