65 Commits

Author SHA1 Message Date
Ioi Lam
f7f193ae71 8072061: Automatically determine optimal sizes for the CDS regions
See new C++ class MetaspaceClosure.

Reviewed-by: coleenp, jiangli, mseledtsov
2017-08-02 18:06:38 -07:00
Coleen Phillimore
17f23d1881 8184994: Add Dictionary size logging and jcmd
Added dcmd for printing system dictionary like the stringtable and symboltable and making print functions go to outputstream rather than tty

Reviewed-by: shade, hseigel
2017-08-02 10:52:50 -04:00
Stefan Karlsson
a18f1c2d58 8183552: Move align functions to align.hpp
Reviewed-by: stuefe, pliden
2017-07-05 11:33:17 +02:00
Stefan Karlsson
dbd3b5a79e 8178499: Remove _ptr_ and _size_ infixes from align functions
Reviewed-by: rehn, tschatzl
2017-07-04 15:58:10 +02:00
Stefan Karlsson
0fcf645cff 8178489: Make align functions more type safe and consistent
Reviewed-by: mgerdin, rehn
2017-04-12 17:53:18 +02:00
Claes Redestad
22cd78c6fb 8183001: Various inlining improvements
Reviewed-by: iklam, mikael, ehelin, stefank
2017-06-29 14:22:42 +02:00
Kim Barrett
6cc7e33ce7 8181449: Fix debug.hpp / globalDefinitions.hpp dependency inversion
Refactor debug.hpp and reverse include dependency.

Reviewed-by: coleenp, stefank, dcubed
2017-06-22 20:47:22 -04:00
Rachel Protacio
451b8b5d32 8176132: -XX:+PrintSharedSpaces should be converted to use Unified Logging
Converted -XX:+PrintSharedSpaces to -Xlog:cds=info

Reviewed-by: iklam, jiangli, mseledtsov
2017-06-05 13:13:38 -04:00
Coleen Phillimore
1c06346c45 8180325: Use ClassLoaderData::classes_do for CDS classes
Use closures and ClassLoaderData::classes_do instead of SystemDictionary::classes_do

Reviewed-by: iklam, jiangli
2017-05-16 19:36:55 -04:00
Ioi Lam
ba388eaccd 8176863: Remove Hashtable::reverse()
Reviewed-by: hseigel, sspitsyn, coleenp
2017-05-04 16:04:23 -07:00
Ioi Lam
f5777dc9bd 8005165: Remove CPU-dependent code in self-patching vtables
Reviewed-by: coleenp, stuefe, jiangli
2017-03-03 23:08:35 -08:00
Ioi Lam
37f332b8ee 8171809: Remove unused CDS code from JDK 9
Reviewed-by: jiangli, ccheung, mseledtsov
2016-12-15 19:26:41 -08: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
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
Jiangli Zhou
5b19c425fa 8157189: 'iload_w' in shared class is not interpreted correctly
Don't rewrite 'iload_w' to 'nofast_iload' in shared class.

Reviewed-by: ccheung, hseigel
2016-06-03 17:45:03 -04: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
Ioi Lam
6526d15d6e 8150607: Clean up CompactHashtable
Refactored code, and added test cases for serviceability agent

Reviewed-by: jiangli, ccheung
2016-04-17 19:15:52 -07:00
Calvin Cheung
28edd79d64 8145221: Use trampolines for i2i and i2c entries in Methods that are stored in CDS archive
This optimization reduces the size of the RW region of the CDS archive. It also reduces the amount of pages in the RW region that are actually written into during runtime.

Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Co-authored-by: Goetz Lindenmaier <goetz.lindenmaier@sap.com>
Reviewed-by: dlong, iklam, jiangli
2016-04-07 22:03:04 -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
Jesper Wilhelmsson
b7ca1e57ee Merge 2016-03-23 23:36:29 +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
Robbin Ehn
28b1a5e7f4 8150015: Integrate TraceTime with Unified Logging more seamlessly
Reviewed-by: coleenp, dholmes
2016-03-15 14:41:07 +01:00
Max Ockner
5f9883ad73 8149995: TraceClassLoadingPreorder has been converted to Unified Logging
TraceClassLoadingPreorder has been converted to Unified Logging. Logging alias table now has extra columns to support multi-tag configurations.

Reviewed-by: iklam, coleenp
2016-03-14 15:06:49 -04:00
Rachel Protacio
92f9c27eec 8148630: Convert TraceStartupTime to Unified Logging
The former -XX:+TraceStartupTime flag has been converted to the UL option -Xlog:startuptime=info

Reviewed-by: coleenp, dholmes
2016-02-17 14:03:18 -05:00
Ioi Lam
4e9dd68311 8145593: Clean up metaspaceShared.cpp
Reviewed-by: jiangli
2016-01-04 13:57:34 -08:00
Ioi Lam
87b0df30ed 8140802: Clean up and refactor of class loading code for CDS
Reviewed-by: jiangli, acorn, coleenp
2015-08-18 11:27:23 -07: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
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
Coleen Phillimore
ac072b303d 8098821: Crash in system dictionary initialization with shared strings
Map string regions after the compressed class base is known

Co-authored-by: Mikhailo Seledtsov <mikhailo.seledtsov@oracle.com>
Reviewed-by: iklam, dcubed
2015-06-17 21:44:48 +00:00
Jiangli Zhou
edcd4cb94b 8015086: add interned strings to the shared archive
Support saving interned strings in shared CDS archive.

Reviewed-by: coleenp, iklam, pliden
2015-06-12 17:29:14 -04:00
Jesper Wilhelmsson
25c41c6094 Merge 2015-05-21 21:17:56 +02:00
Jungwoo Ha
c0fcbe951e 8075288: malloc without free in VM_PopulateDumpSharedSpace::doit()
Reviewed-by: dholmes, stuefe
2015-05-19 01:34:53 -04:00
Harold Seigel
1665046b90 Merge 2015-03-29 09:20:27 -04:00
Yumin Qi
3e6cf09c39 8074345: Enable RewriteBytecodes when VM runs with CDS
Enable bytecode rewriting when CDS turned on.

Co-authored-by: Ioi Lam <ioi.lam@oracle.com>
Reviewed-by: coleenp, iklam
2015-03-25 15:18:37 -07:00
Jesper Wilhelmsson
c1bc0a31b2 8074459: Flags handling memory sizes should be of type size_t
Changed the type to size_t for flags that handles memory sizes

Reviewed-by: kbarrett, tschatzl
2015-03-03 18:01:27 +01:00
Jiangli Zhou
b0ad035af4 8059510: Compact symbol table layout inside shared archive
Use separate compact table for shared symbols.

Reviewed-by: iklam, gziemski, shade, sla, jrose
2014-12-17 23:34:52 -05:00
Ioi Lam
ea256a978f 8066670: PrintSharedArchiveAndExit does not exit the VM when the archive is invalid
In FileMapInfo::fail_continue do not set UseSharedSpaces = false

Reviewed-by: dholmes, ccheung
2014-12-04 15:20:09 -08:00
Jiangli Zhou
9b1628d0b5 Merge 2014-11-10 19:52:28 -05:00
Jiangli Zhou
4f4c4bbd5c 8064375: Change certain errors to warnings in CDS output
Change CDS non-fatal preloading errors to warnings.

Reviewed-by: minqi, mseledtsov, coleenp
2014-11-10 19:28:51 -05:00
Calvin Cheung
5ccaf44879 8060721: Test runtime/SharedArchiveFile/LimitSharedSizes.java fails in jdk 9 fcs new platforms/compiler
Replaced strcat() with jio_snprintf()

Reviewed-by: dholmes, iklam, dlong, minqi
2014-11-10 10:13:10 -08:00
Goetz Lindenmaier
0aa09022fa 8062370: Various minor code improvements
A lot of fixes useful to improve the code quality.

Reviewed-by: coleenp, dholmes
2014-10-29 10:13:24 +01:00
Jiangli Zhou
ad65e81ce7 8044269: Analysis of archive files
Add checksum verification.

Reviewed-by: iklam, dholmes, mschoene
2014-10-14 18:47:46 -07:00
Calvin Cheung
e7456dcf86 8048150: Allow easy configurations for large CDS archives
Estimate the size of shared archive based on the number of classes in the classlist file

Reviewed-by: iklam, jiangli, minqi, dholmes
2014-08-25 00:13:36 -07: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
Goetz Lindenmaier
f2051ed6fa 8048241: Introduce umbrella header os.inline.hpp and clean up includes
Reviewed-by: coleenp, dholmes, lfoltan
2014-06-26 16:05:15 +02:00
David Chase
305ec3bd3f 8037816: Fix for 8036122 breaks build with Xcode5/clang
Repaired or selectively disabled offending formats; future-proofed with additional checking

Reviewed-by: kvn, jrose, stefank
2014-05-09 16:50:54 -04:00