RFR: 8267947: CI: Preserve consistency between has_subklass() and is_subclass_of() [v2]

Vladimir Ivanov vlivanov at openjdk.java.net
Tue Jun 1 10:24:37 UTC 2021


> CI caches `Klass::subklass() != NULL` query, but concurrent class loading can
> invalidate the cached value. Though recorded dependency won't let the nmethod
> to be installed, the inconcistency can manifest as type paradoxes until
> compilation is finished. 
> 
> The fix caches only `true` value (since it can't change unless class unloading
> takes place) and queries the VM otherwise.
> 
> Testing:
> - [x] hs-tier1 - hs-tier6

Vladimir Ivanov has updated the pull request incrementally with two additional commits since the last revision:

 - Refactor asserts
 - Improve comment

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/4269/files
  - new: https://git.openjdk.java.net/jdk/pull/4269/files/9eefb163..c2fd048e

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4269&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4269&range=00-01

  Stats: 14 lines in 2 files changed: 4 ins; 2 del; 8 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4269.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4269/head:pull/4269

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


More information about the hotspot-compiler-dev mailing list