RFR: 8267806: C1: Relax inlining checks for not yet initialized classes

Vladimir Ivanov vlivanov at openjdk.java.net
Wed May 26 18:04:25 UTC 2021


The checks which guide inlining decisions in C1 are too strong: declaring holder class is required to be fully initialized while JVMS only mandates an initialization barrier on resolved class in `invokestatic` case.

The fix relaxes the checks to rule out only not yet linked classes unless it is an `invokestatic` call site.

Testing:
- [x] hs-tier1 - hs-tier9

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

Commit messages:
 - Relax inlining checks in C1

Changes: https://git.openjdk.java.net/jdk/pull/4211/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4211&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8267806
  Stats: 13 lines in 1 file changed: 6 ins; 3 del; 4 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4211.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4211/head:pull/4211

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


More information about the hotspot-compiler-dev mailing list