RFR: 8261731: shallow copy the internal buffer of a scalar-replaced java.lang.String object [v2]
Xin Liu
xliu at openjdk.java.net
Mon Feb 22 05:13:43 UTC 2021
On Wed, 17 Feb 2021 17:42:48 GMT, Volker Simonis <simonis at openjdk.org> wrote:
>> Xin Liu has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 36 commits:
>>
>> - Merge branch 'master' into optimize_substring
>> - fix regression for x86-32
>>
>> if LP64 is off, the offset of AddP must be I instead of L.
>> x86 also doesn't emit encodeP/storeN. it use storeP instead.
>> - add a statistical counter for OptimizeTempArray.
>>
>> -XX:+PrintOptoStatistics shows it
>> - [SIM-JVM-450] support deoptimization v2
>>
>> because the src oop of scobj may be another scobj, deoptimization sort
>> all objects in topological order.
>>
>> separate creation of dst oop and reassignment of it.
>> - add a unit test for deoptimization
>> - [SIM-JVM-450] support deoptimization part2
>>
>> if OptimizeTempArray eliminates an AllocateArrayNode, scalar replacement will
>> create a nested SafePointScalarObjectNode for the field value:byte[] of j.l.String.
>> we use the nested sobj and an ObjectValue an envelope. it consists of 3 fields:
>> 1. src 2. src_positio 3. length.
>>
>> deoptimizaton recognizes this ad-hoc ObjectValue and re-allocate an arrayOop
>> for the String object.
>> - enable OptimizeTempArray by default
>> - Merge branch 'master' into optimize_substring
>> - Revert "8260198: TypeInstPtr::dump2() emits multiple lines if Verbose is set"
>>
>> This reverts commit a49e34688d7d7c9d3c0d9c824d33f359613c2fc1.
>> - Revert "add a new bucket afterea_late_inlines"
>>
>> afterea_late_inlines bucket is not useful. revert it and its relevant changes
>> - ... and 26 more: https://git.openjdk.java.net/jdk/compare/849f4c0f...21693ddd
>
> src/hotspot/share/opto/macro.cpp line 1317:
>
>> 1315: //
>> 1316: //
>> 1317: // EncodeP: delele because we don't need storeN
>
> "delete" not "delele"
got it. thanks. I will update it.
-------------
PR: https://git.openjdk.java.net/jdk/pull/2570
More information about the hotspot-compiler-dev
mailing list