Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8293336: AOT-linking of invokedynamic for lambda expression and string concat #21143

Closed
Changes from 1 commit
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
61aafed
8311071: Add an option to avoid using SoftReferences in java.lang.inv…
iklam Aug 20, 2024
c13d7a9
8293336: Store LambdaForms in CDS archive
iklam Aug 29, 2024
9a58145
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Aug 29, 2024
0f31b25
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Sep 5, 2024
6f5fe49
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Sep 5, 2024
282541b
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Sep 5, 2024
82c2707
more clean up
iklam Sep 17, 2024
8e39118
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Sep 17, 2024
867e443
Do not use system property to limit usage to only CDS static dumps
iklam Sep 17, 2024
db87b24
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Sep 18, 2024
98c45b7
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Sep 18, 2024
90bb890
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Sep 18, 2024
76ef3b3
@dholmes-ora review comments
iklam Sep 18, 2024
1e1b580
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Sep 18, 2024
6d895a7
Filter out lambdas that use excluded classes
iklam Sep 20, 2024
287757a
clean up
iklam Sep 20, 2024
e417bea
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Sep 23, 2024
90bdacb
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Sep 23, 2024
1c98bfa
@liach and @cl4es comments
iklam Sep 23, 2024
5fc834d
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Sep 23, 2024
e7eca90
clean up
iklam Sep 24, 2024
b383d24
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Sep 24, 2024
cd9b938
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Sep 24, 2024
ff1a9d9
clean up
iklam Sep 24, 2024
e69f5ff
Fix JDK-8340836
iklam Sep 25, 2024
f10809a
more clean up
iklam Sep 25, 2024
203577e
more clean up
iklam Sep 30, 2024
1ff71a6
Cleaned up AOTClassInitializer::can_archive_initialized_mirror()
iklam Oct 1, 2024
81aacd6
Merge branch 'remerge' into jep-483-step-07-8293336-store-lambda-form…
iklam Oct 1, 2024
b818714
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Oct 1, 2024
a266873
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Oct 1, 2024
433d8d0
Limit the use of AOTHolder
iklam Oct 1, 2024
806e6d9
Require all <clinit> of supertypes of aot-inited classes to be execut…
iklam Oct 2, 2024
1b067b7
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Oct 2, 2024
49eb47b
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Oct 2, 2024
cb0a3d8
Clean up of aotClassInitializer and cdsHeaVerifier; added lambda test…
iklam Oct 3, 2024
195303f
improve checks for not changing <clinit> order for aot linking of lam…
iklam Oct 8, 2024
ebfbb23
@adinn comments
iklam Oct 9, 2024
e9995ea
8341600: [premain] Automatic aot-init of classes used by java.lang.in…
iklam Oct 11, 2024
039fb65
Fixed JDK-8341988: jstack launched with AOT cache created with -XX:+A…
iklam Oct 13, 2024
5c6e433
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Oct 14, 2024
e46b910
reviews from @iwanowww and @rose00 -- move USE_SOFT_CACHE to MethodHa…
iklam Oct 15, 2024
bbb6a5e
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Oct 15, 2024
382446d
@DanHeidinga comments -- added ConcurrentHashMap::runtimeSetup() to i…
iklam Oct 15, 2024
11391c3
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Oct 16, 2024
3433d7b
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Oct 16, 2024
a6ad908
@DanHeidinga comments -- added comments and asserts related to ClassL…
iklam Oct 16, 2024
4be6a25
Fixed typo in last commit; fixed header inclusion order
iklam Oct 16, 2024
7bab10b
@liach comments -- added comments; added asserts for HashMap safety i…
iklam Oct 17, 2024
030cac2
@rose00 comments -- tighten up the checks for what can or cannot be a…
iklam Oct 18, 2024
3f09464
Added ClaimMetadataVisitingOopIterateClosure::assert_is_pending_aot_l…
iklam Oct 18, 2024
bdba2b6
@stefank comment -- changed to assert(is_pending_aot_linked_class(k),…
iklam Oct 21, 2024
a9ae70e
@iwanowww comment: no need for @Stable for USE_SOFT_CACHE; use final …
iklam Oct 21, 2024
75b5dc2
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Oct 21, 2024
cc4731c
In respond to @ashu-mehra review: add comment about why the main modu…
iklam Oct 21, 2024
044f28a
dholmes-ora comment - removed direct_only parameter from InstanceKlas…
iklam Oct 21, 2024
07e80df
Fixed JDK-8342438: runtime/cds/SharedBaseAddress.java fails with Para…
iklam Oct 21, 2024
19bd676
fixed minimal build
iklam Oct 21, 2024
6916e18
@ashu-mehra comments: renamed to find_required_hidden_classes(), etc,…
iklam Oct 22, 2024
ceea052
Fixed JDK-8342723: Crash with "assert(_instance != nullptr) failed: c…
iklam Oct 22, 2024
d366389
Fixed JDK-8342732: java/lang/invoke/MethodTypeSecurityManager.java fa…
iklam Oct 22, 2024
fbe3095
@DanHeidinga comments - removed dead code; added assert with ArchiveB…
iklam Oct 22, 2024
ccaad3c
(1) @ashu-mehra review comments - code simplfication; (2) fix bug in …
iklam Oct 22, 2024
021466d
Better fix for JDK-8342438: runtime/cds/SharedBaseAddress.java fails …
iklam Oct 22, 2024
875c066
Merge branch 'jep-483-step-05-8293337-archive-method-handle-intrinsic…
iklam Oct 22, 2024
f0bc1ae
Merge branch 'jep-483-step-06-8311071-avoid-soft-refs-in-java-lang-in…
iklam Oct 22, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/hotspot/share/cds/aotClassLinker.hpp
Original file line number Diff line number Diff line change
@@ -26,12 +26,12 @@
#define SHARE_CDS_AOTCLASSLINKER_HPP

#include "interpreter/bytecodes.hpp"
#include "oops/oopsHierarchy.hpp"
#include "memory/allStatic.hpp"
#include "memory/allocation.hpp"
#include "memory/allStatic.hpp"
#include "oops/oopsHierarchy.hpp"
#include "utilities/exceptions.hpp"
#include "utilities/macros.hpp"
#include "utilities/growableArray.hpp"
#include "utilities/macros.hpp"
#include "utilities/resourceHash.hpp"

class AOTLinkedClassTable;
2 changes: 1 addition & 1 deletion src/hotspot/share/cds/aotConstantPoolResolver.hpp
Original file line number Diff line number Diff line change
@@ -26,9 +26,9 @@
#define SHARE_CDS_AOTCONSTANTPOOLRESOLVER_HPP

#include "interpreter/bytecodes.hpp"
#include "oops/oopsHierarchy.hpp"
#include "memory/allStatic.hpp"
#include "memory/allocation.hpp"
#include "oops/oopsHierarchy.hpp"
#include "runtime/handles.hpp"
#include "utilities/exceptions.hpp"
#include "utilities/macros.hpp"
2 changes: 1 addition & 1 deletion src/hotspot/share/cds/aotLinkedClassBulkLoader.cpp
Original file line number Diff line number Diff line change
@@ -286,7 +286,7 @@ void AOTLinkedClassBulkLoader::load_hidden_class(ClassLoaderData* loader_data, I
if (HAS_PENDING_EXCEPTION) {
CLEAR_PENDING_EXCEPTION;
}
)};
});
}

void AOTLinkedClassBulkLoader::finish_loading_javabase_classes(TRAPS) {
2 changes: 1 addition & 1 deletion src/hotspot/share/cds/archiveBuilder.cpp
Original file line number Diff line number Diff line change
@@ -36,8 +36,8 @@
#include "cds/metaspaceShared.hpp"
#include "cds/regeneratedClasses.hpp"
#include "classfile/classLoader.hpp"
#include "classfile/classLoaderExt.hpp"
#include "classfile/classLoaderDataShared.hpp"
#include "classfile/classLoaderExt.hpp"
#include "classfile/javaClasses.hpp"
#include "classfile/symbolTable.hpp"
#include "classfile/systemDictionaryShared.hpp"
2 changes: 1 addition & 1 deletion src/hotspot/share/cds/archiveHeapWriter.cpp
Original file line number Diff line number Diff line change
@@ -34,8 +34,8 @@
#include "memory/oopFactory.hpp"
#include "memory/universe.hpp"
#include "oops/compressedOops.hpp"
#include "oops/oop.inline.hpp"
#include "oops/objArrayOop.inline.hpp"
#include "oops/oop.inline.hpp"
#include "oops/oopHandle.inline.hpp"
#include "oops/typeArrayKlass.hpp"
#include "oops/typeArrayOop.hpp"
3 changes: 1 addition & 2 deletions src/hotspot/share/cds/archiveUtils.inline.hpp
Original file line number Diff line number Diff line change
@@ -29,9 +29,8 @@

#include "cds/archiveBuilder.hpp"
#include "oops/array.hpp"
#include "utilities/growableArray.hpp"

#include "utilities/bitMap.inline.hpp"
#include "utilities/growableArray.hpp"

inline bool SharedDataRelocator::do_bit(size_t offset) {
address* p = _patch_base + offset;
2 changes: 1 addition & 1 deletion src/hotspot/share/cds/cdsHeapVerifier.cpp
Original file line number Diff line number Diff line change
@@ -28,8 +28,8 @@
#include "cds/cdsHeapVerifier.hpp"
#include "classfile/classLoaderDataGraph.hpp"
#include "classfile/javaClasses.inline.hpp"
#include "classfile/systemDictionaryShared.hpp"
#include "classfile/moduleEntry.hpp"
#include "classfile/systemDictionaryShared.hpp"
#include "classfile/vmSymbols.hpp"
#include "logging/log.hpp"
#include "logging/logStream.hpp"
2 changes: 1 addition & 1 deletion src/hotspot/share/cds/dynamicArchive.cpp
Original file line number Diff line number Diff line change
@@ -47,8 +47,8 @@
#include "runtime/arguments.hpp"
#include "runtime/os.hpp"
#include "runtime/sharedRuntime.hpp"
#include "runtime/vmThread.hpp"
#include "runtime/vmOperations.hpp"
#include "runtime/vmThread.hpp"
#include "utilities/align.hpp"
#include "utilities/bitMap.inline.hpp"

2 changes: 1 addition & 1 deletion src/hotspot/share/cds/lambdaFormInvokers.cpp
Original file line number Diff line number Diff line change
@@ -27,8 +27,8 @@
#include "cds/lambdaFormInvokers.hpp"
#include "cds/metaspaceShared.hpp"
#include "cds/regeneratedClasses.hpp"
#include "classfile/classLoadInfo.hpp"
#include "classfile/classFileStream.hpp"
#include "classfile/classLoadInfo.hpp"
#include "classfile/javaClasses.inline.hpp"
#include "classfile/klassFactory.hpp"
#include "classfile/symbolTable.hpp"
1 change: 0 additions & 1 deletion src/hotspot/share/cds/metaspaceShared.cpp
Original file line number Diff line number Diff line change
@@ -32,7 +32,6 @@
#include "cds/cds_globals.hpp"
#include "cds/cdsConfig.hpp"
#include "cds/cdsProtectionDomain.hpp"
#include "cds/cds_globals.hpp"
#include "cds/classListParser.hpp"
#include "cds/classListWriter.hpp"
#include "cds/cppVtables.hpp"
4 changes: 2 additions & 2 deletions src/hotspot/share/classfile/classLoader.cpp
Original file line number Diff line number Diff line change
@@ -25,18 +25,18 @@
#include "precompiled.hpp"
#include "cds/cds_globals.hpp"
#include "cds/cdsConfig.hpp"
#include "cds/heapShared.hpp"
#include "cds/filemap.hpp"
#include "cds/heapShared.hpp"
#include "classfile/classFileStream.hpp"
#include "classfile/classLoader.inline.hpp"
#include "classfile/classLoaderData.inline.hpp"
#include "classfile/classLoaderExt.hpp"
#include "classfile/classLoadInfo.hpp"
#include "classfile/javaClasses.hpp"
#include "classfile/klassFactory.hpp"
#include "classfile/moduleEntry.hpp"
#include "classfile/modules.hpp"
#include "classfile/packageEntry.hpp"
#include "classfile/klassFactory.hpp"
#include "classfile/symbolTable.hpp"
#include "classfile/systemDictionary.hpp"
#include "classfile/systemDictionaryShared.hpp"
4 changes: 2 additions & 2 deletions src/hotspot/share/classfile/systemDictionaryShared.cpp
Original file line number Diff line number Diff line change
@@ -27,13 +27,13 @@
#include "cds/archiveHeapLoader.hpp"
#include "cds/archiveUtils.hpp"
#include "cds/cdsConfig.hpp"
#include "cds/cdsProtectionDomain.hpp"
#include "cds/classListParser.hpp"
#include "cds/classListWriter.hpp"
#include "cds/dumpTimeClassInfo.inline.hpp"
#include "cds/dynamicArchive.hpp"
#include "cds/filemap.hpp"
#include "cds/heapShared.hpp"
#include "cds/cdsProtectionDomain.hpp"
#include "cds/dumpTimeClassInfo.inline.hpp"
#include "cds/metaspaceShared.hpp"
#include "cds/runTimeClassInfo.hpp"
#include "classfile/classFileStream.hpp"
2 changes: 1 addition & 1 deletion src/hotspot/share/classfile/vmClasses.cpp
Original file line number Diff line number Diff line change
@@ -23,9 +23,9 @@
*/

#include "precompiled.hpp"
#include "cds/aotLinkedClassBulkLoader.hpp"
#include "cds/archiveHeapLoader.hpp"
#include "cds/cdsConfig.hpp"
#include "cds/aotLinkedClassBulkLoader.hpp"
#include "classfile/classLoader.hpp"
#include "classfile/classLoaderData.hpp"
#include "classfile/dictionary.hpp"
4 changes: 2 additions & 2 deletions src/hotspot/share/oops/constantPool.cpp
Original file line number Diff line number Diff line change
@@ -24,9 +24,9 @@

#include "precompiled.hpp"
#include "cds/aotConstantPoolResolver.hpp"
#include "cds/archiveHeapWriter.hpp"
#include "cds/archiveHeapLoader.hpp"
#include "cds/archiveBuilder.hpp"
#include "cds/archiveHeapLoader.hpp"
#include "cds/archiveHeapWriter.hpp"
#include "cds/cdsConfig.hpp"
#include "cds/heapShared.hpp"
#include "classfile/classLoader.hpp"
1 change: 0 additions & 1 deletion src/hotspot/share/oops/cpCache.cpp
Original file line number Diff line number Diff line change
@@ -49,7 +49,6 @@
#include "oops/method.inline.hpp"
#include "oops/objArrayOop.inline.hpp"
#include "oops/oop.inline.hpp"
#include "oops/method.inline.hpp"
#include "oops/resolvedFieldEntry.hpp"
#include "oops/resolvedIndyEntry.hpp"
#include "oops/resolvedMethodEntry.hpp"