234 Commits

Author SHA1 Message Date
Lois Foltan
368585d0db 8163406: The fixup_module_list must be protected by Module_lock when inserting new entries
In java_lang_Class::create_mirror, restructure the check for adding a class to the fixup_module_list, guarded by Module_lock.

Reviewed-by: acorn, coleenp, dholmes, zgu
2016-09-19 12:04:28 -04:00
Jiangli Zhou
eb52950704 8078644: CDS needs to support JVMTI CFLH
Support posting CLFH for shared classes. Tests are contributed by Misha Seledtsov.

Reviewed-by: iklam, coleenp, acorn, dcubed, sspitsyn
2016-09-18 21:10:48 -04:00
Coleen Phillimore
3c2621dbdd 8165246: [REDO] InstanceKlass::_previous_version_count goes negative
Make _has_previous_version a boolean that is set to true when previous version of a class is added or during class unloading call to purge_previous_versions

Reviewed-by: gtriantafill, dcubed, sspitsyn
2016-09-07 15:25:21 -04:00
Coleen Phillimore
f03ab592cc 8165268: [BACKOUT] InstanceKlass::_previous_version_count goes negative
Reviewed-by: dcubed
2016-09-01 18:02:13 -04:00
Coleen Phillimore
31d8fcc4f9 8164692: InstanceKlass::_previous_version_count goes negative
Decrement previous_version_count when it's removed from the list.

Reviewed-by: dcubed, dlong, sspitsyn
2016-08-31 06:35:19 -04:00
David Holmes
6db26ca5bf 8158854: Ensure release_store is paired with load_acquire in lock-free code
Reviewed-by: shade, dcubed, zgu
2016-08-29 20:13:45 -04:00
David Holmes
5f1f4489ac 8157907: Incorrect inclusion of atomic.hpp instead of atomic.inline.hpp
Remove atomic.inline.hpp and move the contents back into atomic.hpp

Reviewed-by: stefank, pliden, simonis
2016-08-21 20:56:37 -04:00
Coleen Phillimore
8f37b6e451 8161445: [BACKOUT] MemberNameTable doesn't purge stale entries
Original change caused performance regression in microbenchmarks after GC

Reviewed-by: dholmes, ecaspole
2016-08-01 16:28:23 -04:00
Karen Kinnear
9c928767ba 8162340: Better class stream parsing
Check platform and boot loader for java/* packages

Reviewed-by: lfoltan, coleenp, dholmes
2016-07-27 08:31:48 -04:00
Jiangli Zhou
bd07a43e61 8153312: Constrain AppCDS behavior
Reviewed-by: iklam, acorn, mschoene
2016-04-20 16:39:37 -04:00
Ioi Lam
2a09a3923a 8150752: Share Class Data
Reviewed-by: acorn, hseigel, mschoene
2016-04-06 21:53:44 -07:00
Ioi Lam
79377a1bf1 8159666: Better CDS support for Event-based tracing
Reviewed-by: jiangli, mgronlun
2016-06-20 22:02:20 -07:00
Coleen Phillimore
eba25b33b9 8152271: MemberNameTable doesn't purge stale entries
Intern MemberNames in table instead of allocating new entries

Reviewed-by: vlivanov, sspitsyn, dholmes
2016-06-15 09:48:24 -04:00
Max Ockner
680e1a3a28 8157490: JCK test vm/jni/DefineClass/dfcl001/dfcl00101m1/dfcl00101m1 crashes when run with -Xlog:classload=info
Null stream->source() no longer causes error with -Xlog:class+load

Reviewed-by: lfoltan, coleenp
2016-06-13 13:47:21 -04:00
Rachel Protacio
e956abefe6 8153858: Clean up needed when obtaining the package name from a fully qualified class name
Consolidated and refactored code parsing fully qualified names. Includes gtest.

Reviewed-by: dholmes, coleenp
2016-06-07 11:39:47 -04:00
David Holmes
c301fb7188 8154750: Add missing OrderAccess operations to ClassLoaderData lock-free data structures
Reviewed-by: kbarrett, coleenp, acorn
2016-06-02 23:37:09 -04:00
Robbin Ehn
2523b1942a 8153535: Convert TraceRedefineClasses to Unified Logging
Reviewed-by: rprotacio, coleenp
2016-05-09 22:22:15 +02:00
Max Ockner
da0fe9d476 8154110: Update class* and safepoint* logging subsystems
Refactored logging tags in class and safepoint subsystems.

Reviewed-by: coleenp, rehn, hseigel
2016-04-29 22:40:51 -04:00
Rachel Protacio
09add35155 8152844: JVM InstanceKlass Methods For Obtaining Package/Module Should Be Moved to Klass
Converted package() and module() functions to pure virtual functions of Klass

Reviewed-by: dholmes, coleenp, lfoltan, hseigel
2016-04-26 09:08:12 -04:00
Chris Plummer
7cd3700010 8148195: Some InstanceKlass and MethodCounters fields can be excluded when JVMTI is not supported
Removed "previous version", "cached class file",  and breakpoint related fields and code when JVMTI is not supported

Reviewed-by: coleenp, sspitsyn
2016-04-21 20:49:11 -07:00
Joseph Provino
5cef85023b 8132524: Missing includes to resourceArea.hpp
Files that use ResourceMark are missing the include of resourceArea.hpp

Reviewed-by: tschatzl, jwilhelm
2016-04-04 12:57:48 -04:00
Stefan Karlsson
15c4140ae5 8152632: Rename LogHandle(...) to Log(...)
Reviewed-by: brutisso, mlarsson, rprotacio
2016-04-04 09:15:15 +02:00
Zoltan Majo
3edb7b95ba Merge 2016-03-23 15:01:42 +01:00
Alan Bateman
f30fc1c88b 8142968: Module System implementation
Initial integration of JEP 200, JEP 260, JEP 261, and JEP 282

Co-authored-by: Alex Buckley <alex.buckley@oracle.com>
Co-authored-by: Jonathan Gibbons <jonathan.gibbons@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Co-authored-by: Mandy Chung <mandy.chung@oracle.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Co-authored-by: Lois Foltan <lois.foltan@oracle.com>
Co-authored-by: Calvin Cheung <calvin.cheung@oracle.com>
Co-authored-by: Christian Tornqvist <christian.tornqvist@oracle.com>
Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: George Triantafillou <george.triantafillou@oracle.com>
Co-authored-by: Igor Ignatyev <igor.ignatyev@oracle.com>
Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Co-authored-by: James Laskey <james.laskey@oracle.com>
Co-authored-by: Jean-Francois Denise <jean-francois.denise@oracle.com>
Co-authored-by: Jiangli Zhou <jiangli.zhou@oracle.com>
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Co-authored-by: Serguei Spitsyn <serguei.spitsyn@oracle.com>
Co-authored-by: Staffan Larsen <staffan.larsen@oracle.com>
Co-authored-by: Sundararajan Athijegannathan <sundararajan.athijegannathan@oracle.com>
Reviewed-by: acorn, ccheung, coleenp, ctornqvi, dholmes, dsimms, gtriantafill, iklam, jiangli, mgronlun, mseledtsov, cjplummer, sspitsyn, stefank, twisti, hseigel, lfoltan, alanb, mchung, dfazunen
2016-03-17 19:04:01 +00:00
Tobias Hartmann
ba7e4da495 8023191: OSR nmethods should be flushed to free space in CodeCache
Treat OSR nmethods like normal nmethods and flush them if they are cold/unused.

Reviewed-by: kvn
2016-03-18 09:32:29 +01:00
Vladimir Ivanov
4532f54300 7177745: JSR292: Many Callsite relinkages cause target method to always run in interpreter mode
Reviewed-by: jrose, kvn
2016-02-19 20:40:20 +03:00
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
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
David Lindholm
ad0c208a5a 8146690: Make all classes in GC follow the naming convention
Reviewed-by: dholmes, stefank
2016-01-14 13:26:19 +01:00
Bengt Rutisson
ffeb0bdad0 8145092: Use Unified Logging for the GC logging
JEP-271. VM changes contributed by brutisso, test changes contributed by david.

Co-authored-by: David Lindholm <david.lindholm@oralce.com>
Reviewed-by: sjohanss, david, brutisso
2015-12-10 14:57:55 +01:00
Markus Grönlund
2ad9d3192f 8140485: Class load and creation cleanup
Reviewed-by: hseigel, coleenp, sspitsyn
2015-12-08 20:04:03 +01:00
Max Ockner
c6b57e4c8c Merge 2015-12-03 19:35:18 +00:00
Max Ockner
a3d8114b45 8142976: Reimplement TraceClassInitialization with Unified Logging
TraceClassInitialization logging reimplemented with Unified Logging.

Reviewed-by: coleenp, hseigel
2015-12-02 14:07:58 -05:00
Jesper Wilhelmsson
c7a51854d9 Merge 2015-11-30 19:38:51 +01:00
Vladimir Ivanov
a03d2513aa 8143408: Crash during InstanceKlass unloading when clearing dependency context
Reviewed-by: kvn
2015-11-25 01:17:28 +03:00
Nils Eliasson
3307d0f163 Merge 2015-11-06 11:34:03 +01:00
Tobias Hartmann
7af927f9c1 8141132: JEP 254: Compact Strings
Adopt a more space-efficient internal representation for strings.

Co-authored-by: Brent Christian <brent.christian@oracle.com>
Co-authored-by: Vivek Deshpande <vivek.r.deshpande@intel.com>
Co-authored-by: Charlie Hunt <charlie.hunt@oracle.com>
Co-authored-by: Vladimir Kozlov <vladimir.kozlov@oracle.com>
Co-authored-by: Roger Riggs <roger.riggs@oracle.com>
Co-authored-by: Xueming Shen <xueming.shen@oracle.com>
Co-authored-by: Aleksey Shipilev <aleksey.shipilev@oracle.com>
Co-authored-by: Sandhya Viswanathan <sandhya.viswanathan@intel.com>
Reviewed-by: alanb, bdelsart, coleenp, iklam, jiangli, jrose, kevinw, naoto, pliden, roland, smarks, twisti
2015-11-03 09:41:03 +01: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
Karen Kinnear
d63f180edb 8098557: Only init superintf if subclass, not sub interface inits
Must exclude jck lang exec05001m311_rt until fixed.

Reviewed-by: lfoltan, hseigel, dholmes
2015-11-25 09:08:51 -05: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
David Lindholm
5770f4eb32 8042893: compiler: PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC needs to be removed from source files
8042894: runtime: PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC needs to be removed from source files

Reviewed-by: goetz, brutisso
2015-10-09 09:42:33 +02:00
David Lindholm
1e71f67736 8080775: Better argument formatting for assert() and friends
Reviewed-by: kbarrett, pliden
2015-09-29 11:02:08 +02: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
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