On Thu, 22 Oct 2020 08:14:47 GMT, Richard Reingruber <rr...@openjdk.org> wrote:
>> @reinrich did I mess something up when merging this in? > > Stack frames are counted beginning at 0. The top frame has depth 0. So object > deoptimization happens in the top frame. > > Still the used method is not optimal because it assumes that objects of > frames within the given depth are accessed and their escape state is changed. > But potentially caller methods optimized on the escape state therefore it > searches for caller frames passing ArgEscape objects and deoptimizes these > too. With ForceEarlyReturn no objects are accessed but it is so uncommon that > I did not bother optimizing this. Should I? @robehn you haven't messed up. Hope I havn't either. I've tested ============================== Test summary ============================== TEST TOTAL PASS FAIL ERROR jtreg:test/hotspot/jtreg:hotspot_serviceability 197 197 0 0 jtreg:test/jdk:jdk_svc 1176 1176 0 0 jtreg:test/jdk:jdk_jdi 174 174 0 0 jtreg:test/hotspot/jtreg:vmTestbase_nsk_jdi 1141 1141 0 0 jtreg:test/hotspot/jtreg:vmTestbase_nsk_jvmti 648 648 0 0 jtreg:test/hotspot/jtreg:vmTestbase_nsk_jdwp 113 113 0 0 ============================== TEST SUCCESS jdk_jdi now includes jdk/com/sun/jdi/EATests.java which tests PopFrame/ForceEarlyReturn with object reallocation with and without reallocation failures. ------------- PR: https://git.openjdk.java.net/jdk/pull/729