50 Commits

Author SHA1 Message Date
Goetz Lindenmaier
d8c6516c92 8218628: Add detailed message to NullPointerException describing what is null
This is the implementation of JEP 358: Helpful NullPointerExceptions.

Reviewed-by: coleenp, clanger, rschmelter, rriggs, forax, mr
2019-10-14 11:36:17 +02:00
Kim Barrett
1acad37ee6 8227054: ServiceThread needs to know about all OopStorage objects
8227053: ServiceThread cleanup of OopStorage is missing some

OopStorages provides named access and iteration.

Reviewed-by: eosterlund, pliden, coleenp
2019-08-21 18:42:30 -04:00
Kim Barrett
e396e38bb3 8227653: Add VM Global OopStorage
Replaced conditional JVMCI global storage with VM global storage.

Reviewed-by: tschatzl, lfoltan, kvn
2019-07-18 14:57:32 -04:00
Coleen Phillimore
04b98fd1df 8222446: assert(C->env()->system_dictionary_modification_counter_changed()) failed: Must invalidate if TypeFuncs differ
Remove SystemDictionary::modification_counter optimization

Reviewed-by: dlong, eosterlund
2019-07-10 07:58:24 -04:00
Sergey Kuksenko
145f06a155 8223504: Improve performance of forall loops by better inlining of "iterator()" methods
Reviewed-by: vlivanov, shade
2019-05-30 12:45:02 -07:00
Coleen Phillimore
77d60eff6a 8223626: move print() functions to cpp files
Improve debugging experience

Reviewed-by: dholmes, dlong
2019-05-10 09:05:29 -04:00
Gerard Ziemski
d988e67b89 8185525: Add JFR event for DictionarySizes
Added TableStatistics event

Reviewed-by: egahlin, coleenp
2019-05-08 11:11:50 -05:00
Vladimir Kozlov
e9c523ae5f 8220623: [JVMCI] Update JVMCI to support JVMCI based Compiler compiled into shared library
Reviewed-by: dnsimon, never, stefank, rehn, neliasso, dholmes, kbarrett, coleenp
2019-05-01 12:31:29 -07:00
Lois Foltan
57aaf7a8cd 8218994: Consolidate indy and condy JVM information within a BootstrapInfo data structure
Introduce BootstrapInfo data structure and merge invocation of a bootstrap method for condy and indy into invoke_bootstrap_method.

Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: acorn, coleenp
2019-04-23 14:09:54 -04:00
Andrew Dinn
71164a973b 8221477: Inject os/cpu-specific constants into Unsafe from JVM
Initialize Unsafe os/cpu-specific constants using injection instead of native callouts

Reviewed-by: stuefe, coleenp, dholmes, plevart
2019-04-05 10:01:09 +01:00
Aleksey Shipilev
2cf209bd92 8221726: Multiple build failures after JDK-8221698 (Remove redundant includes from popular header files)
Reviewed-by: dholmes, stuefe, iklam
2019-04-01 10:04:22 +02:00
Ioi Lam
22484b8c35 8221698: Remove redundant includes from popular header files
Removed histogram.hpp classLoader.hpp utf8.hpp moduleEntry.hpp packageEntry.hpp

Reviewed-by: coleenp, stuefe
2019-03-30 08:26:20 -07:00
Ioi Lam
d06f3e7e28 8218751: Do not store original classfiles inside the CDS archive
Remove the OD shared region and decode classfiles on the fly

Reviewed-by: jiangli, ccheung, sspitsyn, redestad
2019-02-21 17:07:35 -08:00
Lois Foltan
9631b06423 8217998: Remove method_type field associated with the appendix field of an indy or method handle call
Removed the unused method_type field associated with the appendix field of an indy or method handle call.

Reviewed-by: acorn, coleenp, dlong
2019-02-13 15:50:08 -05:00
Coleen Phillimore
154a1a02bf 8216167: Update include guards to reflect correct directories
Use script and some manual fixup to fix directores names in include guards.

Reviewed-by: lfoltan, eosterlund, kbarrett
2019-01-10 15:13:51 -05:00
Ioi Lam
147fc3ed13 8213346: Re-implement shared dictionary using CompactHashtable
Reviewed-by: jiangli
2018-11-07 19:40:27 -08:00
Thomas Schatzl
56db122656 8213307: G1 should clean up RMT with ClassUnloadingWithConcurrentMark
Re-enable cleanup of the ResolvedMethodTable after changes in JDK-8206423.

Reviewed-by: shade, coleenp
2018-11-13 11:45:16 +01:00
Dean Long
a9ae141836 8212605: Pure-Java implementation of AccessController.doPrivileged
Reviewed-by: dholmes, mullan, vlivanov, mchung, alanb, rriggs
2018-11-06 16:04:50 -08:00
Jiangli Zhou
b9f22907d3 8203953: Rename SystemDictionary::load_shared_class(Symbol*, Handle, TRAPS) to load_shared_boot_class()
Rename SystemDictionary::load_shared_class.

Reviewed-by: coleenp
2018-10-30 22:24:04 -04:00
Ioi Lam
93395f6a9e 8212200: assert when shared java.lang.Object is redefined by JVMTI agent
Reviewed-by: dholmes, jiangli, hseigel, lfoltan, sspitsyn
2018-10-17 15:57:10 -07:00
Ioi Lam
4abb6861ec 8212642: Remove SystemDictionary::InitOption enum
Reviewed-by: dholmes, kvn, redestad
2018-10-18 23:05:01 -07:00
Patricio Chilano Mateo
16b92a561c 8206424: Use locking for cleaning ProtectionDomainTable
ServiceThread is now in charge of cleaning ProtectionDomainTable entries

Reviewed-by: coleenp, iklam
2018-08-31 10:22:04 -04: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
Claes Redestad
5c3008fbc4 8209120: Archive the Integer.IntegerCache
Reviewed-by: jiangli, alanb, plevart, iklam, mchung
2018-08-13 19:21:43 +02: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
Ioi Lam
1b2e7cbaef 8208999: Some use of Klass* should be replaced by InstanceKlass*
Klass::java_super() => InstanceKlass*; InstanceKlass::{local,transitive}_interfaces() => Array<InstanceKlass*>*

Reviewed-by: coleenp, hseigel
2018-08-07 15:45:07 -07:00
Ioi Lam
9959e34180 8203382: Rename SystemDictionary::initialize_wk_klass to resolve_wk_klass
Reviewed-by: jiangli
2018-07-20 12:19:28 -07: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
Lois Foltan
425e1a8bb8 8202605: Standardize on ClassLoaderData::loader_name() throughout the VM to obtain a class loader's name
Introduced ClassLoaderData::name() and ClassLoaderData::name_and_id() for use when obtaining a class loader's name.

Reviewed-by: coleenp, goetz, mchung, stuefe
2018-06-19 07:54:11 -04:00
David Holmes
ab275c586e 8199882: compiler/uncommontrap/TestDeoptOOM.java failed w/ fatal error: ExceptionMark constructor expects no pending exceptions
Pre-load AbstractOwnableSynchronizer class instead of lazy loading it.

Reviewed-by: sspitsyn, cjplummer, coleenp
2018-06-05 19:58:20 -04:00
Coleen Phillimore
e3a3941c9a 8202813: Move vm_weak processing from SystemDictionary to WeakProcessor
SystemDictionary has all strong roots.  The weak oop_storage is processed by the WeakProcessor so it can be scanned and cleared concurrently and/or by parallel threads.

Reviewed-by: kbarrett, sjohanss
2018-05-29 15:50:27 -04:00
Ioi Lam
5f578213c5 8189140: SystemDictionaryShared::initialize() should be renamed to be more meaningful
Removed this function, added JavaCalls::construct_new_instance and moved SharedDictionary_lock

Reviewed-by: jiangli, ccheung, dholmes, coleenp
2018-05-15 14:49:10 -07:00
Kim Barrett
65abdefedf 8202631: JVM_Clone to throw CloneNotSupportException for Reference object
JVM_Clone throws; delete previous partial support for cloning.

Reviewed-by: eosterlund, mchung, dholmes, coleenp
2018-05-08 20:59:58 -04:00
Ioi Lam
e48f38966b 8197954: Remove unnecessary intermediary APIs from AppCDS implementation
Reviewed-by: jiangli, ccheung
2018-04-26 13:40:58 -07:00
Kim Barrett
1ac19a3166 8192025: Less referential references
Reviewed-by: coleenp, eosterlund, mchung, ahgross, rhalade
2018-01-18 22:17:11 -05:00
Coleen Phillimore
d187884156 8198313: Wrap holder object for ClassLoaderData in a WeakHandle
Use WeakHandle for ClassLoaderData::_holder so that is_alive closure is not needed

Reviewed-by: rehn, kbarrett
2018-04-10 10:06:42 -04: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
Coleen Phillimore
4c3e072611 8198926: Move ClassLoaderData::_dependencies to ClassLoaderData::_handles
Move dependency creation and cleaned up logging

Reviewed-by: hseigel, jiangli
2018-03-06 17:15:16 -05:00
Harold Seigel
7d1735efbb 8184289: Obsolete -XX:+UnsyncloadClass and -XX:+MustCallLoadClassInternal options
Add comments, fix a small issue with the boot loader, and add an assert.

Reviewed-by: coleenp, alanb, acorn, dholmes
2018-02-21 11:18:52 -05:00
Paul Sandoz
e55a05957d 8186209: Tool support for ConstantDynamic
8186046: Minimal ConstantDynamic support
8190972: Ensure that AOT/Graal filters out class files containing CONSTANT_Dynamic ahead of full AOT support

Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: acorn, coleenp, kvn
2017-09-08 10:46:46 -07:00
Jesper Wilhelmsson
fc1b01b9a2 Merge 2018-01-13 02:56:22 +01:00
Lana Steuck
aad1a3592c Merge 2018-01-16 22:24:20 +00:00
Vladimir Ivanov
1b558514ff 8188145: MethodHandle resolution should follow JVMS sequence of lookup by name & type before type descriptor resolution
Reviewed-by: kvn, psandoz
2018-01-12 01:52:06 +03:00
Coleen Phillimore
ebd77628a4 8058259: compute_offset() is confusing for static fields
Remove most hard-coded offsets, have compute_offset function that takes a string and creates a TempNewSymbol, have static_field_addr() not add in InstanceMirrorKlass::offset_of_static_fields, ie use offset from find_field

Reviewed-by: kbarrett, sspitsyn
2018-01-08 09:46:31 -05:00
Harold Seigel
47bbcac667 8154587: Resolution fails for default method named 'clone'
Make sure default methods with the same names as those in j.l.Object get put in the default methods table where resolution can find them.

Reviewed-by: acorn, lfoltan
2017-12-15 11:23:50 -05:00
Gerard Ziemski
a043febf6f 8184765: Dynamically resize SystemDictionary
Implemented dynamic resizing, which triggers when load factor is too high

Reviewed-by: coleenp, rehn
2017-11-02 11:00:34 -05:00
Ioi Lam
a422994296 8190191: Subclasses of jdk.jfr.Event loaded from CDS breaks -XX:FlightRecorderOptions=retransform=false
Do not archive these classes

Reviewed-by: jiangli, sspitsyn
2017-10-29 18:13:18 -07:00
Calvin Cheung
449114a4f6 8185694: Replace SystemDictionaryShared::_java_platform_loader with SystemDictionary::is_platform_class_loader()
Added the creation of _java_platform_loader

Reviewed-by: iklam, coleenp, mchung, dholmes, jiangli
2017-10-10 14:38:56 -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