RFR: 8338930: StringConcatFactory hardCoded string concatenation strategy [v6]
Shaojin Wen
swen at openjdk.org
Fri Sep 6 00:48:01 UTC 2024
On Thu, 5 Sep 2024 23:37:30 GMT, Chen Liang <liach at openjdk.org> wrote:
>> Shaojin Wen has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 12 commits:
>>
>> - Merge remote-tracking branch 'upstream/master' into optim_concat_factory_202408
>>
>> # Conflicts:
>> # src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java
>> - reuseThreshold -> cacheThreshold
>> - Revert "optimize for CompactStrings is off"
>>
>> This reverts commit a9fa264afd9fa625ef29357a7ca8559ce9c5fea4.
>> - optimize for CompactStrings is off
>> - Merge remote-tracking branch 'upstream/master' into optim_concat_factory_202408
>>
>> # Conflicts:
>> # src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java
>> - add control flag `reuseThreshold`
>> - Revert "Optimize the construction of MethodType and MethodTypeDesc to reduce memory allocation"
>>
>> This reverts commit 3bed7290f5cb987e86407f698fb0598f19d65628.
>> - Optimize the construction of MethodType and MethodTypeDesc to reduce memory allocation
>> - revert code style
>> - from suggest
>> - ... and 2 more: https://git.openjdk.org/jdk/compare/8fb8cd85...5c12e337
>
> src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 1288:
>
>> 1286: if (staticConcat) {
>> 1287: clb.withSuperclass(CD_Object)
>> 1288: .withFlags(ACC_FINAL | ACC_SUPER | ACC_SYNTHETIC);
>
> According to #19517, project lilliput wants utility classes to be declared `abstract` instead of `final` so their pointers won't be encodable in object headers
Do I need to declare it as ACC_INTERFACE? Many utility classes do this.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/20675#discussion_r1746349350
More information about the core-libs-dev
mailing list