[lworld] RFR: 8247923: [lworld] Empty inline types break calling convention optimization

Tobias Hartmann thartmann at openjdk.java.net
Wed Jun 24 10:24:05 UTC 2020

Empty inline types confuse the calling convention optimization because the injected byte field is not picked up by
ciValueKlass::_declared_nonstatic_fields. This patch disables the calling convention optimization for empty inline
types and makes sure empty inline types are not allocated by C2. I've filed JDK-8248220 to evaluate further
optimization opportunities for empty inline types.


Commit messages:
 - Fix to code in sharedRuntime.cpp
 - 8247923: [lworld] Empty inline types break calling convention optimization

Changes: https://git.openjdk.java.net/valhalla/pull/97/files
 Webrev: https://webrevs.openjdk.java.net/valhalla/97/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8247923
  Stats: 144 lines in 10 files changed: 120 ins; 3 del; 21 mod
  Patch: https://git.openjdk.java.net/valhalla/pull/97.diff
  Fetch: git fetch https://git.openjdk.java.net/valhalla pull/97/head:pull/97

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

More information about the valhalla-dev mailing list