[lworld] [Rev 01] RFR: 8245584: [lworld] LW3 core reflection update

Mandy Chung mchung at openjdk.java.net
Tue May 26 18:59:31 UTC 2020

> This patch updates the core reflection for the new language model for inline classes.
> - `Class::isInlineClass` returns true for inline classes
> - `Class::valueType` returns the value projection of an inline class
> - `Class::referenceType` returns the reference projection if it's an inline class,
>     or this class if it's not an inline class
> If this class has no val type or ref type, `Class::valueType` and `Class::referenceType`
> return an empty `Optional`.   We can re-examine  if we should modernize Class API shape
> where  we can rather than holding to the tradition.
> I updated TestIntrinsics.java to use the new APIs for now to keep it compiled.
> This test will be updated when the intrinsification of the old API `Class::asPrimaryType`
> and `Class:asIndirectType` is removed.

Mandy Chung has updated the pull request with a new target base due to a merge or a rebase. The pull request now
contains five commits:

 - Remove unused methods no longer needed by JIT
 - Merge
 - minor adjustment per review feedback
 - Class::valueType and Class::referenceType return Optional
 - 8245584: [lworld] LW3 core reflection update


Changes: https://git.openjdk.java.net/valhalla/pull/53/files
 Webrev: https://webrevs.openjdk.java.net/valhalla/53/webrev.01
  Stats: 495 lines in 34 files changed: 44 ins; 255 del; 196 mod
  Patch: https://git.openjdk.java.net/valhalla/pull/53.diff
  Fetch: git fetch https://git.openjdk.java.net/valhalla pull/53/head:pull/53

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

More information about the valhalla-dev mailing list