155 Commits

Author SHA1 Message Date
Max Ockner
9cab990401 8079408: Reimplement TraceClassLoading, TraceClassUnloading, and TraceClassLoaderData with Unified Logging
TraceClassLoading,  TraceClassUnloading, and TraceClassLoaderData have been reimplemented using Unified logging.

Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Reviewed-by: iklam, coleenp, dholmes, jiangli, hseigel, rprotacio
2016-02-03 11:40:30 -05:00
Mikael Gerdin
3cda485fe5 8148481: Devirtualize Klass::vtable
Move remainder of vtable related methods to Klass

Reviewed-by: cjplummer, coleenp
2016-01-19 12:07:32 +01:00
Mikael Gerdin
211dc93a85 8148047: Move the vtable length field to Klass
Reviewed-by: cjplummer, twisti, coleenp, kbarrett
2015-12-01 10:35:49 +01:00
Coleen Phillimore
97e169ac77 8145628: hotspot metadata classes shouldn't use HeapWordSize or heap related macros like align_object_size
Use align_metadata_size, align_metadata_offset and is_metadata_aligned for metadata rather than align_object_size, etc.  Use wordSize rather than HeapWordSize for metadata.  Use align_ptr_up rather than align_pointer_up (all the related functions are ptr).

Reviewed-by: hseigel, jmasa, cjplummer
2016-01-30 11:02:29 -05:00
Ray Alex
4f42f17d9e 8146987: Improve Parallel GC Full GC by caching results of live_words_in_range()
A large part of time in the parallel scavenge collector is spent finding out the amount of live words within memory ranges to find out where to move an object to. Try to incrementally calculate this value.

Reviewed-by: tschatzl, mgerdin, jmasa
2016-01-28 13:30:12 +01:00
Mikael Gerdin
1163c0a2cb 8147461: Use byte offsets for vtable start and vtable length offsets
Reviewed-by: cjplummer, coleenp, dnsimon
2016-01-27 14:50:56 +01:00
Chris Plummer
a73f6dc940 8143608: Don't 64-bit align start of InstanceKlass vtable, itable, and nonstatic_oopmap on 32-bit systems
Removed alignment of these fields.

Reviewed-by: coleenp, dholmes, mgerdin
2016-01-20 11:58:09 -08:00
Christian Thalinger
9e981ee107 Merge 2015-12-18 12:39:02 -08:00
Christian Thalinger
bf5db72254 8134994: use separate VMStructs databases for SA and JVMCI
Reviewed-by: kbarrett
2015-12-14 17:02:02 -10:00
Markus Grönlund
2ad9d3192f 8140485: Class load and creation cleanup
Reviewed-by: hseigel, coleenp, sspitsyn
2015-12-08 20:04:03 +01:00
Vladimir Ivanov
1cfbe2dec5 8139595: MethodHandles::remove_dependent_nmethod is not MT safe
Reviewed-by: jrose, coleenp
2015-11-18 03:03:43 +03:00
Coleen Phillimore
fc03719078 8139203: Consistent naming for klass type predicates
8138923: Remove oop coupling with InstanceKlass subclasses

Renamed oop_is_instance and friends, removed the functions in oop that dug down into InstanceKlass.

Reviewed-by: jrose, lfoltan, stefank
2015-10-28 09:47:23 -04:00
Coleen Phillimore
5179fc3488 8139163: InstanceKlass::cast passes through NULL
Reduce raw (InstanceKlass*) casts and InstanceKlass::cast, which no long allows null

Reviewed-by: twisti, kbarrett
2015-10-26 13:11:36 -04:00
Coleen Phillimore
f1e89ea4cc 8140274: methodHandles and constantPoolHandles should be passed as const references
Modified code to use const reference parameters

Reviewed-by: sspitsyn, twisti
2015-10-23 16:48:38 -04:00
Stefan Karlsson
0c74942fe6 8058563: InstanceKlass::_dependencies list isn't cleared from empty nmethodBucket entries
Reviewed-by: mgerdin, vlivanov
2015-10-13 10:06:46 +02:00
Kim Barrett
37125920a7 8138659: Speed up InstanceKlass subclass discrimination
Add _misc_kind field and flags, move around predicates.

Reviewed-by: coleenp, stefank
2015-10-09 14:08:15 -04:00
Stefan Johansson
dada9bc32c 8129417: Oop iteration clean-up to remove oop_ms_follow_contents
Reviewed-by: pliden, ehelin
2015-09-02 09:14:04 +02:00
Karen Kinnear
7983a4235c 8087342: Crash in klassItable::initialize_itable_for_interface
Fix method searches to handle static, private instance and overpass

Reviewed-by: lfoltan, dholmes, hseigel
2015-08-06 13:02:15 -04:00
Vladimir Ivanov
aae5102c06 8081320: Backout JDK-8059340: ConstantPool::_resolved_references is missing in heap dump
Reviewed-by: sspitsyn, coleenp
2015-05-29 17:04:21 +03:00
Tobias Hartmann
59f2a0f85f Merge 2015-05-29 12:49:31 +02:00
Stefan Johansson
b04d2bca57 8080746: Refactor oop iteration macros to be more general
Reviewed-by: stefank, pliden
2015-05-25 11:39:43 +02:00
Tobias Hartmann
068d5d78b1 Merge 2015-05-22 09:50:32 +02:00
Vladimir Ivanov
3f096651f3 8059340: ConstantPool::_resolved_references is missing in heap dump
Reviewed-by: sspitsyn, stefank, twisti
2015-05-21 18:22:33 +03:00
Vladimir Ivanov
e5a92a9fb9 8079205: CallSite dependency tracking is broken after sun.misc.Cleaner became automatically cleared
Reviewed-by: roland, psandoz, plevart, kbarrett, jrose
2015-05-15 19:23:11 +03:00
Vladimir Kozlov
b9c00b1904 Merge 2015-04-16 14:05:48 -07:00
Vladimir Ivanov
ce40bf07b2 8057919: Class.getSimpleName() should work for non-JLS compliant class names
Reviewed-by: dholmes, jrose
2015-04-14 18:03:43 +03:00
Jesper Wilhelmsson
7ec8aadd33 Merge 2015-04-09 17:39:42 +02:00
Stefan Karlsson
232a59cb40 8075955: Replace the macro based implementation of oop_oop_iterate with a template based solution
Reviewed-by: brutisso, coleenp, kbarrett, sjohanss
2015-04-02 10:04:27 +02:00
Jesper Wilhelmsson
5f5b27baba Merge 2015-03-23 22:08:14 +01:00
Harold Seigel
1665046b90 Merge 2015-03-29 09:20:27 -04:00
Serguei Spitsyn
cc2bb40bf3 8067662: "java.lang.NullPointerException: Method name is null" from StackTraceElement.<init>
Use method cpref and klass version to provide meaningful methods name in stacktraces

Reviewed-by: coleenp, dcubed
2015-03-20 02:44:51 -07:00
Coleen Phillimore
7b384c6958 8061205: MetadataOnStackMark only needs to walk code cache during class redefinition
Only do full metadata walk during class redefinition and only walk handles during class unloading.

Reviewed-by: sspitsyn, stefank
2015-03-13 12:40:39 -04:00
Serguei Spitsyn
942d1f7f32 8046246: the constantPoolCacheOopDesc::adjust_method_entries() used in RedefineClasses does not scale
Optimize the adjust_method_entries functions by using the orig_method_idnum() function

Reviewed-by: coleenp, dcubed
2015-02-25 00:30:54 -08:00
Yumin Qi
3bbda04f98 Merge 2015-01-27 20:02:35 -08:00
Lois Foltan
5f8b5ceaee 8067480: Crash in klassItable::initialize_itable_for_interface when running vm.runtime.defmeth.StaticMethodsTest
A static method should be skipped in entirety by find_instance_method(), searching should continue to find an overpass method of the same name and signature if present.

Reviewed-by: acorn, hseigel
2015-01-23 09:54:33 -05:00
David Chase
2080004ef0 8064524: Compiler code generation improvements
Reviewed-by: jrose, acorn, vlivanov
2014-12-01 13:06:20 -05:00
Stefan Karlsson
366bf9ff09 8075247: Cleanup specialized_oop_closures.hpp
Reviewed-by: mgerdin, brutisso, tschatzl
2015-03-17 14:18:52 +01:00
Coleen Phillimore
4151db8bfd 8042235: redefining method used by multiple MethodHandles crashes VM
Note all MemberNames created on internal list for adjusting method entries.

Reviewed-by: sspitsyn, dcubed, lfoltan
2014-11-19 13:02:11 -05:00
Jeremy Manson
54e9fee4d2 8062116: JVMTI GetClassMethods is Slow
Allocate enough space for all jmethodids; make adding a jmethodid O(1)

Reviewed-by: coleenp, rasbold, sspitsyn
2014-11-05 16:47:37 -08:00
Igor Veresov
5870a5b77b Merge 2014-10-30 09:50:16 -10:00
Tobias Hartmann
fe1762fbd6 8061817: Whitebox.deoptimizeMethod() does not deoptimize all OSR versions of method
Fixed Whitebox.deoptimizeMethod() to deoptimize all OSR versions of the method.

Reviewed-by: kvn, iignatyev
2014-10-30 13:03:30 +01:00
Karen Kinnear
0e1283a811 8043275: Fix interface initialization for default methods
Initialize interfaces that declare concrete instance methods.

Reviewed-by: kamg, coleenp, psandoz
2014-10-22 15:24:37 -07:00
Coleen Phillimore
3c70d99eda 8055008: Clean up code that saves the previous versions of redefined classes
Use scratch_class to find EMCP methods for breakpoints if the old methods are still running.

Reviewed-by: dcubed, sspitsyn
2014-09-03 19:13:18 -04:00
Ioi Lam
bbe6f51f81 8046070: Class Data Sharing clean up and refactoring
Cleaned up CDS to be more configurable, maintainable and extensible

Reviewed-by: dholmes, coleenp, acorn, mchung
2014-08-12 17:29:00 -07:00
Stefan Karlsson
1b001a2afd 8049421: G1 Class Unloading after completing a concurrent mark cycle
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Reviewed-by: tschatzl, ehelin, brutisso, coleenp, roland, iveresov
2014-07-07 10:12:40 +02:00
Stefan Karlsson
ef1e9b3c80 8049420: Backout 8048248 to correct attribution
Reviewed-by: ehelin, brutisso
2014-07-07 12:37:11 +02:00
Stefan Karlsson
8c3aced316 8048248: G1 Class Unloading after completing a concurrent mark cycle
Reviewed-by: tschatzl, ehelin, brutisso, coleenp, roland, iveresov
2014-07-07 10:12:40 +02:00
Goetz Lindenmaier
8e7c8f1d88 8044775: Improve usage of umbrella header atomic.inline.hpp
Reviewed-by: stefank, kvn
2014-06-04 11:56:44 +02:00
Dmitry Samersoff
c291efb1df 6904403: assert(f == k-&gt;has_finalizer(),&quot;inconsistent has_finalizer&quot;) with debug VM
Don't assert if one of classes in hierarhy was redefined

Reviewed-by: coleenp, sspitsyn
2014-05-28 07:36:32 -07:00
Lois Foltan
8c36d0cd2b 8033150: invokestatic: IncompatibleClassChangeError trying to invoke static method from a parent in presence of conflicting defaults
A static method should be preferred during method resolution over an overpass, search the current class as well as its superclasses.

Reviewed-by: acorn, coleenp, kamg
2014-04-14 14:27:45 -04:00