[lworld] RFR: JDK-8293321: [lworld] substitutability test shall support value class with cyclic membership [v2]
Mandy Chung
mchung at openjdk.org
Fri Oct 28 21:54:27 UTC 2022
> L-type allows cycles. `acmp` shall support value classes with cyclic membership. This PR adds the support in the Java implementation of `acmp` (i.e. `ValueObjectMethods::isSubstitutable`).
>
> This patch includes [John's first cut to make a Y combinator method handle](https://github.com/openjdk/jdk/pull/10155) to enable a method handle to call itself recursively. PR 10155 is adequate for internal use for now. A separate RFE will follow to define such an API.
>
> A separate issue [JDK-8296056](https://bugs.openjdk.org/browse/JDK-8296056) tracks the C2 `acmp` support.
Mandy Chung has updated the pull request incrementally with two additional commits since the last revision:
- Add a test case of large graph throwing SOE
- Add a node-visit counter and throw SOE if it exceeds the threshold
-------------
Changes:
- all: https://git.openjdk.org/valhalla/pull/802/files
- new: https://git.openjdk.org/valhalla/pull/802/files/00757be8..8b1e5508
Webrevs:
- full: https://webrevs.openjdk.org/?repo=valhalla&pr=802&range=01
- incr: https://webrevs.openjdk.org/?repo=valhalla&pr=802&range=00-01
Stats: 192 lines in 2 files changed: 138 ins; 22 del; 32 mod
Patch: https://git.openjdk.org/valhalla/pull/802.diff
Fetch: git fetch https://git.openjdk.org/valhalla pull/802/head:pull/802
PR: https://git.openjdk.org/valhalla/pull/802
More information about the valhalla-dev
mailing list