RFR: 8308899: Introduce Classfile.Context and improve Classfile.Option(s) [v8]
Chen Liang
liach at openjdk.org
Thu Jun 8 11:11:54 UTC 2023
On Thu, 8 Jun 2023 09:26:10 GMT, Adam Sotona <asotona at openjdk.org> wrote:
>> Classfile context object and multi-state options have been discussed at https://mail.openjdk.org/pipermail/classfile-api-dev/2023-May/000321.html
>> This patch implements the proposed changes in Classfile API and fixes all affected code across JDK sources and tests.
>>
>> Please review.
>>
>> Thanks,
>> Adam
>
> Adam Sotona has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 29 commits:
>
> - removal of ClassHierarchyImpl.DEFAULT_RESOLVER
> introduction of ClassHierarchyResolver::ofSystem factory method
> ClassfileImpl does not pre-initialize ClassHierarchyResolverOption with default
> - Merge branch 'master' into JDK-8308899-context
>
> # Conflicts:
> # src/java.base/share/classes/jdk/internal/classfile/impl/Options.java
> # src/java.base/share/classes/jdk/internal/classfile/snippet-files/PackageSnippets.java
> # test/jdk/jdk/classfile/ClassHierarchyInfoTest.java
> # test/jdk/jdk/classfile/VerifierSelfTest.java
> - Merge branch 'master' into JDK-8308899-context
>
> # Conflicts:
> # src/java.base/share/classes/jdk/internal/classfile/Classfile.java
> # src/java.base/share/classes/jdk/internal/classfile/impl/DirectCodeBuilder.java
> # test/jdk/jdk/classfile/DiscontinuedInstructionsTest.java
> # test/jdk/jdk/classfile/FilterDeadLabelsTest.java
> # test/jdk/jdk/classfile/ShortJumpsFixTest.java
> # test/jdk/jdk/classfile/StackMapsTest.java
> - added missing javadoc
> - simplified options names
> - fixed copyright header
> - Merge branch 'master' into JDK-8308899-context
> - fixed StackMapGenerator::generatorError and removed obsolete SplitConstantPool clone constructor
> - Merge branch 'master' into JDK-8308899-context
> - fixed benchmarks
> - ... and 19 more: https://git.openjdk.org/jdk/compare/ac3ce2bf...aa691842
src/java.base/share/classes/jdk/internal/classfile/ClassHierarchyResolver.java line 66:
> 64: @Override
> 65: public Map<ClassDesc, ClassHierarchyResolver.ClassHierarchyInfo> get() {
> 66: return new ConcurrentHashMap<>();
Don't think we need to synchronize the cache if we have dedicated CHRs.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14180#discussion_r1222886769
More information about the core-libs-dev
mailing list