47 Commits

Author SHA1 Message Date
Jiangli Zhou
80ad2c7e71 8212995: Placing the Integer.IntegerCache and cached Integer objects in the closed archive heap region
Support shareable archive object subgraphs in closed archive heap regions.

Reviewed-by: iklam, ccheung
2018-11-03 15:40:19 -04:00
Calvin Cheung
fc19077b52 8213000: Obsolete the IgnoreUnverifiableClassesDuringDump vm option
Remove code referencing the IgnoreUnverifiableClassesDuringDump

Reviewed-by: dholmes, jiangli
2018-10-31 14:00:51 -07:00
Ioi Lam
9a06fc3ea7 8212205: VM asserts after CDS archive has been unmapped
Reviewed-by: dholmes, jiangli, hseigel, stuefe
2018-10-25 11:23:43 -07:00
Calvin Cheung
7c81535d46 8209598: Clean up how messages are printed when CDS aborts start-up
Added a new function vm_exit_during_cds_dumping() to java.cpp so that it can be used when an error condition is encountered during CDS dumping.

Reviewed-by: iklam, dholmes, jiangli
2018-10-25 21:40:17 -07:00
Jiangli Zhou
a2ad8f419f 8206009: Move CDS java heap object archiving code to heapShared.hpp and heapShared.cpp
Restructure and cleanup java heap object archiving code.

Reviewed-by: coleenp, iklam
2018-10-09 15:58:07 -04:00
Ioi Lam
2f82ed4f1d 8210388: Use hash table to store archived subgraph_info records
Reviewed-by: jiangli
2018-10-08 16:29:10 -07:00
Coleen Phillimore
7ef28cb2bc 8209645: Split ClassLoaderData and ClassLoaderDataGraph into separate files
Reviewed-by: iklam, stuefe
2018-09-28 16:07:39 -04:00
Ioi Lam
1619cbd14b 8210864: Reduce the use of metaspaceShared.hpp
Reviewed-by: coleenp, lfoltan
2018-09-18 21:46:17 -07:00
Ioi Lam
4e74846da8 8210523: runtime/appcds/cacheObject/DifferentHeapSizes.java crash
Reviewed-by: jiangli, ccheung
2018-09-12 17:45:22 -07:00
Ioi Lam
e80b128db4 8210289: ArchivedKlassSubGraphInfoRecord is incomplete
Reviewed-by: jiangli, ccheung
2018-09-05 18:14:45 -07:00
Jiangli Zhou
bd77f790c3 8209971: TestOptionsWithRanges.java crashes in CDS mode with G1UpdateBufferSize=1
Fixup archive heap regions before restoring any archived java object at runtime.

Reviewed-by: iklam, ccheung
2018-09-07 15:18:14 -04:00
Coleen Phillimore
eb9259138f 8210155: Lock ClassLoaderDataGraph
In preparation for concurrent class unloading.

Reviewed-by: hseigel, eosterlund
2018-08-31 07:03:46 -04:00
Coleen Phillimore
3559b6be76 8209958: Clean up duplicate basic array type statics in Universe
Reviewed-by: lfoltan, zgu
2018-08-28 18:17:01 -04:00
Ioi Lam
5b2c081460 8208658: Make CDS archived heap regions usable even if compressed oop encoding has changed
Relocate and patch archive regions if necessary

Reviewed-by: jiangli, tschatzl
2018-08-14 09:59:37 -07:00
Ioi Lam
73951ab5d9 8209657: Refactor filemap.hpp to simplify integration with Serviceability Agent
Added src/hotspot/share/include/cds.h

Reviewed-by: ccheung, sspitsyn, jgeorge
2018-08-17 13:53:53 -07:00
Lois Foltan
75ed173e15 8209301: JVM rename is_anonymous, host_klass to unsafe specific terminology ahead of Unsafe.defineAnonymousClass deprecation
Clean up VM anonymous class terminology.

Reviewed-by: coleenp, dholmes, mchung
2018-08-20 08:25:57 -04:00
Ioi Lam
2e941724e4 8209545: Simplify HeapShared::archive_module_graph_objects
Added archivable_static_fields array in heapShared.cpp

Reviewed-by: jiangli
2018-08-15 11:19:57 -07:00
Jiangli Zhou
da4684e2e1 8209389: SIGSEGV in WalkOopAndArchiveClosure::do_oop_work
Check the MetaspaceShared::archive_heap_object return value and handle failure accordingly.

Reviewed-by: iklam, coleenp
2018-08-16 17:29:22 -04:00
Ioi Lam
e12ee81ff0 8206115: Use shared macros for JavaClasses::compute_offsets and MetaspaceShared::serialize_well_known_classes
Added BASIC_JAVA_CLASSES_DO in javaClasses.hpp

Reviewed-by: jiangli, redestad, coleenp
2018-08-14 20:46:46 -07:00
Jiangli Zhou
a5d14313f5 8207263: Store the Configuration for system modules into CDS archive
Archive boot layer Configuration.

Reviewed-by: redestad, iklam, ccheung
2018-08-10 00:35:57 -04:00
Jiangli Zhou
9ba5bab865 8202035: Archive the set of ModuleDescriptor and ModuleReference objects for observable system modules with unnamed initial module
Support system module archiving with unnamed initial module at dump time.

Co-authored-by: Alan Bateman <alan.bateman@oracle.com>
Reviewed-by: erikj, coleenp, mchung, iklam, ccheung
2018-07-08 12:43:05 -04:00
Jiangli Zhou
884f9db3c6 8205699: assert(_owner_offset != 0) failed in javaClasses.cpp
Added java_util_concurrent_locks_AbstractOwnableSynchronizer::serialize.

Reviewed-by: ccheung, dholmes
2018-06-27 11:55:35 -04:00
Kim Barrett
df34500027 8204585: Remove IN_ARCHIVE_ROOT from Access API
Replaced Access API with API on heap.

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Reviewed-by: jiangli, coleenp, tschatzl
2018-06-12 18:12:59 -04:00
Robbin Ehn
66f8951e15 8195097: Make it possible to process StringTable outside safepoint
Reviewed-by: coleenp, gziemski, iklam, jiangli
2018-06-07 14:11:56 +02:00
Ioi Lam
f9742fc0a6 8193332: MetaspaceShared::check_shared_class_loader_type is not used during archive creation
Reviewed-by: lfoltan, jiangli
2018-05-21 21:27:12 -07:00
Stefan Karlsson
90a2a92fe3 8202709: Move oopDesc::is_archive_object to MetaspaceShared::is_archive_object
Reviewed-by: ehelin, jiangli
2018-05-07 14:57:23 +02:00
Ioi Lam
e48f38966b 8197954: Remove unnecessary intermediary APIs from AppCDS implementation
Reviewed-by: jiangli, ccheung
2018-04-26 13:40:58 -07:00
Stefan Karlsson
1cb95bd3d1 8200729: Conditional compilation of GCs
Reviewed-by: ehelin, coleenp, kvn, ihse
2018-05-04 11:41:35 +02:00
Jiangli Zhou
20edc74068 8193213: Make the UseAppCDS option obsolete
8182731: Odd handling of -XX:-UseAppCDS and -XX:SharedArchiveFile

Application class data sharing is enabled without -XX:+UseAppCDS. SharedArchiveFile is now a product flag.

Reviewed-by: dholmes, ihse, erikj, ccheung
2018-04-30 16:59:05 -04:00
Calvin Cheung
894e8c6479 8197972: Always verify non-system classes during CDS dump time
Use -Verify:remote even if the user specifies -Xverify:none during CDS dump time

Reviewed-by: iklam, mseledtsov, jiangli
2018-04-17 16:19:48 -07:00
Calvin Cheung
4ef7c919a2 8194812: Extend class-data sharing to support the module path
8199360: Rework the support for the 'ignored' module options in CDS

Reviewed-by: jiangli, lfoltan, iklam, mseledtsov
2018-04-10 11:43:40 -07:00
Stefan Karlsson
1a1aecd166 8200106: Move NoSafepointVerifier out from gcLocker.hpp
Reviewed-by: coleenp
2018-03-23 18:54:12 +01:00
Stefan Karlsson
f89abe4589 8199946: Move load/store and encode/decode out of oopDesc
Reviewed-by: eosterlund, coleenp, tschatzl
2018-03-15 21:24:10 +01:00
Stuart Monteith
502b9b1da4 8193266: AArch64: TestOptionsWithRanges.java SIGSEGV
Fix hotspot jtreg test runtime/CommandLine/OptionsValidation/TestOptionsWithRanges.java failure on AArch64.

Reviewed-by: aph, coleenp, dsamersoff
2018-03-20 22:54:02 +08:00
Coleen Phillimore
221d0f4c54 8199809: Don't include frame.inline.hpp and other.inline.hpp from .hpp files
Remove frame.inline.hpp,etc from header files and adjust transitive includes.

Reviewed-by: stefank, stuefe
2018-03-21 19:45:24 -04:00
Calvin Cheung
214248fe11 8196626: [Graal] runtime/appcds/UseAppCDS.java crashes with "VM thread using lock Heap_lock (not allowed to block on)"
Print a message and abort CDS dumping when the allocation of metaspace has failed

Reviewed-by: iklam, mseledtsov
2018-03-09 13:36:39 -08:00
Erik Österlund
a06129a432 8195148: Collapse G1SATBCardTableModRefBS and G1SATBCardTableLoggingModRefBS into a single G1BarrierSet
Reviewed-by: ehelin, kbarrett
2018-03-06 08:36:44 +01:00
Calvin Cheung
efcc8d2558 8193434: [GRAAL] Graal classes are not loaded with -Xshare:dump
Allow loading of non-boot classes during CDS dumping but only add boot classes to the archive

Reviewed-by: kvn, iklam, jiangli
2018-03-02 17:33:59 -08:00
Jiangli Zhou
f987dec395 8194759: Support caching class mirror objects
Support archiving mirror objects for shared classes in 'open' archive java heap region.

Reviewed-by: coleenp, iklam, mseledtsov, tschatzl
2018-03-02 17:25:55 -05:00
Marcus Larsson
6ef9800875 8194994: Remove redundant string streams used for logging
Reviewed-by: rehn, iklam, coleenp
2018-02-13 14:10:56 +01:00
Ioi Lam
a3cb6e9204 8178351: Simplify MetaspaceShared::is_in_shared_space and MetaspaceObj::is_shared
Use a single range check with MetaspaceObj::_shared_metaspace_{base,top}

Reviewed-by: jiangli, redestad, shade
2018-01-16 16:57:53 -08:00
Calvin Cheung
915b2cd1f2 8192989: runtime/appcds/javaldr/ArrayTest.java crashes with assert(k->is_instance_klass())
Disable loading array classes from the class list

Reviewed-by: iklam, jiangli
2017-12-08 15:14:08 -08:00
Coleen Phillimore
e908052a71 8189610: Reconcile jvm.h and all jvm_md.h between java.base and hotspot
Removed hotspot version of jvm*h and jni*h files.

Reviewed-by: ihse, mchung, dholmes
2017-10-31 11:55:09 -04:00
Thomas Schatzl
793aa8d8ce 8189666: Replace various inlined percentage calculations with global percent_of()
Reviewed-by: sjohanss, sangheki
2017-10-23 11:46:25 +02:00
Jiangli Zhou
3ccd60110d 8174986: CDS archived java heap region may not compatible with AOT
Always uses LogKlassAlignmentInBytes for narrow_klass_shift when CDS is enabled.

Reviewed-by: iklam, ccheung
2017-10-06 19:33:27 -04:00
Ioi Lam
a2d1045eef 8187979: Clean up info printing at CDS dump time
Reviewed-by: jiangli, ccheung
2017-10-02 16:00:42 -07:00
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00