28 Commits

Author SHA1 Message Date
Harold Seigel
3d6ba9735f 8228596: Class redefinition fails when condy instructions are removed
Make sure has_dynamic_constant flag value gets copied to merged constant pool, when it is set to TRUE

Reviewed-by: coleenp, dcubed, sspitsyn
2019-07-29 09:57:37 -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
Stefan Karlsson
c90f3ee68b 8223624: Cleanup includes of universe.hpp
Reviewed-by: coleenp, lkorinth
2019-05-09 14:28:30 +02:00
Coleen Phillimore
ccb2e9d925 8222988: Use MonitorLocker rather than MutexLocker when wait/notify used
Fixed use cases in code except CMS.

Reviewed-by: rehn, dcubed
2019-04-29 16:01:52 -04:00
Coleen Phillimore
6ebf2ce655 8192936: RI does not follow the JVMTI RedefineClasses spec that is too strict in the definition
Introduce new flag fo compatibility: -XX:AllowRedefinitionToAddOrDeleteMethods

Reviewed-by: jcbeyler, sspitsyn
2019-04-19 21:49:54 -07:00
Coleen Phillimore
246544eeb7 8221183: Avoid code cache walk in MetadataOnStackMark
Note nmethods with "old" Methods in them in table to walk instead.

Reviewed-by: eosterlund, sspitsyn
2019-04-01 09:53:30 -04:00
Coleen Phillimore
2a83596e85 8181171: Deleting method for RedefineClasses breaks ResolvedMethodName
8210457: JVM crash in ResolvedMethodTable::add_method(Handle)

Add a function to call NSME in ResolvedMethodTable to replace deleted methods.

Reviewed-by: sspitsyn, dholmes, dcubed
2019-02-26 08:01:20 -05:00
Coleen Phillimore
351280bbb8 8078725: method adjustments can be done just once for all classes involved into redefinition
Walk all classes at the end of redefinition and adjust method entries and clean MethodData

Reviewed-by: sspitsyn
2019-02-22 13:56:08 -05:00
Claes Redestad
dbdfbb518f 8219229: Make ConstantPool::tag_at and release_tag_at_put inlineable
Reviewed-by: dholmes, coleenp
2019-02-20 09:53:28 +01:00
Lois Foltan
29245f8878 8218004: Clean up terminology for shared methods within the JVM for indy and condy support
Remove "invoke_dynamic" from the name of several ConstantPool bootstrap helper methods that are shared by both indy and condy.

Reviewed-by: coleenp, dholmes, mchung
2019-02-13 14:20:40 -05:00
Coleen Phillimore
8f5e561d19 8139551: Scalability problem with redefinition - multiple code cache walks
Walk code cache and deoptimize once per redefinition.

Reviewed-by: sspitsyn, dlong
2019-02-05 10:40:25 -05:00
Claes Redestad
bf63ee682e 8216157: Enable inlining of java_lang_Class::is_primitive
Reviewed-by: coleenp, eosterlund, jiangli
2019-01-04 16:23:56 +01:00
Coleen Phillimore
7ef28cb2bc 8209645: Split ClassLoaderData and ClassLoaderDataGraph into separate files
Reviewed-by: iklam, stuefe
2018-09-28 16:07:39 -04:00
Harold Seigel
18bbeb53e6 8210470: Remove unused Verifier::verify() Verifier::Mode argument
Remove the unused argument.

Reviewed-by: coleenp, jiangli
2018-09-11 09:53:41 -04:00
David Holmes
b66c67675d 8210486: Unused code in check_nest_attributes function
Reviewed-by: mikael, sspitsyn
2018-09-07 08:14:47 -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
Coleen Phillimore
a7b66f6f5e 8208677: Move inner metaspace cleaning out of class unloading
Move to safepoint cleanup actions to do if needed.

Reviewed-by: eosterlund, hseigel
2018-08-08 15:24:21 -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
Lois Foltan
e8fcd927c3 8178712: ResourceMark may be missing inside initialize_[vi]table
Clean up use of ResourceMark within initialize_[vi]table.

Reviewed-by: ccheung, iklam, jiangli
2018-07-16 09:06:33 -04:00
David Holmes
95bf19563b 8010319: Implementation of JEP 181: Nest-Based Access Control
Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Maurizio Mimadamore <maurizio.mimadamore@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Co-authored-by: Tobias Hartmann <tobias.hartmann@oracle.com>
Co-authored-by: Vlaidmir Ivanov <vladimir.x.ivanov@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Vladimir Kozlov <vladimir.kozlov@oracle.com>
Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Daniel Smith <daniel.smith@oracle.com>
Co-authored-by: Serguei Spitsyn <serguei.spitsyn@oracle.com>
Co-authored-by: Kumar Srinivasan <kumardotsrinivasan@gmail.com>
Co-authored-by: Boris Ulasevich <boris.ulasevich@bell-sw.com>
Reviewed-by: alanb, psandoz, mchung, coleenp, acorn, mcimadamore, forax, jlahoda, sspitsyn, abuckley
2018-06-23 01:32:41 -04:00
Stefan Karlsson
1a1aecd166 8200106: Move NoSafepointVerifier out from gcLocker.hpp
Reviewed-by: coleenp
2018-03-23 18:54:12 +01: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
Stefan Karlsson
133faf856d 8199264: Remove universe.inline.hpp to simplify include dependencies
Reviewed-by: coleenp, hseigel
2018-03-07 21:57:36 +01:00
Kim Barrett
d7765d9002 8198474: Move JNIHandles::resolve into jniHandles.inline.hpp
Moved resolve and friends to new jniHandles.inline.hpp.

Reviewed-by: tschatzl, pliden, coleenp
2018-03-01 16:51:22 -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
Daniel D. Daugherty
0dff96ff0b 8167108: inconsistent handling of SR_lock can lead to crashes
Add Thread Safe Memory Reclamation (Thread-SMR) mechanism.

Co-authored-by: Erik Osterlund <erik.osterlund@oracle.com>
Co-authored-by: Robbin Ehn <robbin.ehn@oracle.com>
Reviewed-by: coleenp, dcubed, dholmes, eosterlund, gthornbr, kbarrett, rehn, sspitsyn, stefank
2017-11-22 17:54:50 -08:00
Coleen Phillimore
fd85805dc0 8178870: instrumentation.retransformClasses cause coredump
Don't double-free cached class bytes on redefinition loading failure.

Reviewed-by: sspitsyn, jiangli
2017-10-06 14:30:04 -04:00
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00