768 Commits

Author SHA1 Message Date
Ioi Lam
e48f38966b 8197954: Remove unnecessary intermediary APIs from AppCDS implementation
Reviewed-by: jiangli, ccheung
2018-04-26 13:40:58 -07:00
Thomas Stuefe
1ea9f48936 8185034: Cleanup and consolidate Metaspace coding
Reviewed-by: coleenp, zgu
2018-05-07 20:42:36 +02:00
Goetz Lindenmaier
72a2ac8b8b 8199852: Print more information about class loaders in LinkageErrors
Reviewed-by: dholmes, lfoltan, gtriantafill
2018-05-07 11:38:21 +02:00
Stefan Karlsson
5f40eda733 8202642: Replace PAR_OOP_ITERATE with templates
Reviewed-by: eosterlund, sjohanss
2018-05-07 14:42:10 +02:00
Stefan Karlsson
1dd85fe2f4 8202641: Replace OOP_SINCE_SAVE_MARKS with templates
Reviewed-by: eosterlund, sjohanss
2018-05-07 14:42:08 +02:00
Stefan Karlsson
2e1bd03bad 8202639: Use concrete Generation classes in SerialHeap and CMSHeap
Reviewed-by: eosterlund, ehelin
2018-05-07 14:42:05 +02:00
Stefan Karlsson
5dfccac11f 8202592: Remove unused EvacuateFollowersClosure
Reviewed-by: kbarrett, tschatzl
2018-05-07 14:42:04 +02:00
Stefan Karlsson
7d380f1708 8202591: Remove usage of CMSEdenChunksRecordAlways in defNewGeneration.cpp
Reviewed-by: eosterlund, kbarrett
2018-05-07 14:42:00 +02:00
Erik Österlund
983911c697 8202083: Remove explicit CMS checks in CardTableBarrierSet
Reviewed-by: kbarrett
2018-05-07 10:36:38 +02:00
Martin Doerr
71a38a4720 8202080: Introduce ordering semantics for Atomic::add and other RMW atomics
Reviewed-by: lucy, rehn, dholmes
2018-05-07 12:28:11 +02:00
Tobias Hartmann
29b1984560 8202565: C1 compilation crashes with "assert(is_double_stack() && !is_virtual()) failed: type check"
Only eagerly resolving the address into a register if the store is precise.

Reviewed-by: roland, eosterlund
2018-05-07 08:56:35 +02:00
Erik Österlund
e6bccc9d86 8202640: Small C1 cleanups for BarrierSetC1
Reviewed-by: kvn, neliasso
2018-05-05 22:19:19 +02:00
Aleksey Shipilev
aef2df31e6 8202684: Minimal VM build is broken after JDK-8199067, JDK-8202638
Reviewed-by: eosterlund, stuefe
2018-05-05 18:55:31 +02:00
Kim Barrett
a313d5961a 8202672: Build failed in metaspace.cpp with VS2017
Add whitespace between string and identifier.

Reviewed-by: dcubed, erikj
2018-05-05 12:38:15 -04:00
Vladimir Ivanov
3ecce1fe48 8202465: [C1] casts should not be eliminated for interface types
Reviewed-by: jrose, thartmann
2018-05-04 16:49:22 -07:00
Gary Adams
dd34d29a46 8202319: Fix compilation warnings in Solaris debug builds for DevStudio 12.6
Disable warnings.

Reviewed-by: dholmes, kbarrett
2018-05-04 17:52:10 -04:00
Leo Korinth
97571a7c4e 8176717: GC log file handle leaked to child processes
Reviewed-by: stuefe, rehn
2018-05-03 15:17:27 +02:00
Stefan Karlsson
1cb95bd3d1 8200729: Conditional compilation of GCs
Reviewed-by: ehelin, coleenp, kvn, ihse
2018-05-04 11:41:35 +02:00
Thomas Stuefe
d9b3c3203e 8201572: Improve Metaspace Statistics
Reviewed-by: adinn, zgu
2018-04-24 18:06:32 +02:00
Kim Barrett
9b734fc849 8200557: OopStorage parallel iteration scales poorly
Change representation of sequence of all blocks for better scaling.

Reviewed-by: coleenp, eosterlund
2018-05-03 17:36:50 -04:00
Vladimir Kozlov
8ebfc59cfa 8202552: [AOT][JVMCI] Incorrect usage of INCLUDE_JVMCI and INCLUDE_AOT
Reviewed-by: stefank, ihse
2018-05-03 09:07:40 -07:00
Thomas Stuefe
6a12519d84 8202424: Metaspace: on chunk retirement, use correct lower limit on chunksize when adding blocks to free blocks list
Reviewed-by: zgu, coleenp
2018-04-30 15:55:21 +02:00
Coleen Phillimore
204ba9a580 8202447: Fix unloading_occurred to mean unloading_occurred
Nmethod unloading does not need to test for jvmti to set unloading_occurred, nor do we need to clean weak Klasses in metadata if unloading does not occur.

Reviewed-by: sspitsyn, rehn
2018-04-27 15:00:04 -04:00
Zhengyu Gu
9353d59547 8199067: [REDO] NMT: Enhance thread stack tracking
Precise thread stack tracking on Linux and Windows

Reviewed-by: stuefe, coleenp
2018-05-03 08:07:20 -04:00
Thomas Schatzl
deb5bf745f 8202021: Improve variable naming in ReferenceProcesso
Reviewed-by: sangheki, sjohanss
2018-05-03 14:10:08 +02:00
Thomas Schatzl
73771f97e9 8202018: Move card table clear before enqueuing pending references
Move card table clearing in preparation of removal of the Reference enqueue phase.

Reviewed-by: sangheki, sjohanss
2018-05-03 14:09:39 +02:00
Thomas Schatzl
91ba4b5676 8201640: Use _ref_processor_* member variables directly in G1CollectedHeap
Reviewed-by: sjohanss
2018-05-03 14:09:21 +02:00
Thomas Schatzl
945701e945 8201492: Properly implement non-contiguous generations for Reference discovery
Collectors like G1 implementing non-contiguous generations previously used an inexact but conservative area for discovery. Concurrent and STW reference processing could discover the same reference multiple times, potentially missing referents during evacuation. So these collectors had to take extra measures while concurrent marking/reference discovery has been running. This change makes discovery exact for G1 (and any collector using non-contiguous generations) so that concurrent discovery and STW discovery discover on strictly disjoint memory areas. This means that the mentioned situation can not occur any more, and extra work is not required any more too.

Reviewed-by: kbarrett, sjohanss
2018-05-03 14:09:00 +02:00
Thomas Stuefe
d2c3ef2f85 8202303: LogStream should autoflush on destruction
Reviewed-by: dholmes, rehn, zgu
2018-05-03 07:35:17 +02:00
Daniel D. Daugherty
9a94336b7d 8191798: redo nested ThreadsListHandle to drop Threads_lock
Refactor Thread hazard ptrs and nested ThreadsLists into SafeThreadsListPtr.

Co-authored-by: Erik Osterlund <erik.osterlund@oracle.com>
Reviewed-by: dcubed, eosterlund, rehn
2018-05-02 16:47:40 -04:00
Calvin Cheung
aedb6040c6 8200466: Revisit the setting of _transitive_interfaces in InstanceKlass
Delay the setting of _transitive_interfaces until after initialize_supers() in fill_instance_klass().

Reviewed-by: iklam, coleenp
2018-05-02 09:26:10 -07:00
Stefan Johansson
45aa655cd0 8202140: TLAB logging is not correct for G1
Reviewed-by: tschatzl, sangheki
2018-05-02 13:44:49 +02:00
Stefan Johansson
7f7d103c85 8191471: Elastic TLABs for G1
Reviewed-by: tschatzl, pliden
2018-05-02 13:44:46 +02:00
Aleksey Shipilev
0e7d8874a9 8202379: ARM32 is broken after JDK-8201543 (Modularize C1 GC barriers)
Reviewed-by: aph, eosterlund
2018-05-01 19:13:31 +02:00
Zhengyu Gu
3c202e01d8 8201542: Remove unused _gc_timer field in GCMemoryManager
Minor cleanup to remove unused field

Reviewed-by: shade, minqi
2018-05-01 07:40:41 -04:00
John Rose
d05ed512ac 8200167: Validate more special case invocations
Co-authored-by: Vladimir Ivanov <vladimir.x.ivanov@oracle.com>
Co-authored-by: Tobias Hartmann <tobias.hartmann@oracle.com>
Reviewed-by: acorn, vlivanov, dholmes
2018-04-30 21:56:54 -04:00
Jiangli Zhou
20edc74068 8193213: Make the UseAppCDS option obsolete
8182731: Odd handling of -XX:-UseAppCDS and -XX:SharedArchiveFile

Application class data sharing is enabled without -XX:+UseAppCDS. SharedArchiveFile is now a product flag.

Reviewed-by: dholmes, ihse, erikj, ccheung
2018-04-30 16:59:05 -04:00
Per Lidén
b9490e5760 8202366: Add macro for common loop in GCConfig
Reviewed-by: eosterlund, shade
2018-04-30 12:19:55 +02:00
Per Lidén
8c235a30e7 8202364: Add GCConfig::hs_err_name() to avoid GC-specific code in error reporting
Reviewed-by: eosterlund, shade
2018-04-30 12:19:53 +02:00
Christoph Langer
d24f8fd099 8202367: AIX build broken after JDK-8201543
Reviewed-by: eosterlund, shade, mdoerr
2018-04-27 13:09:54 +01:00
Thomas Schatzl
0f583c7817 6672778: G1 should trim task queues more aggressively during evacuation pauses
Regularly try to drain task queues. This helps memory usage and performance during garbage collection.

Reviewed-by: sjohanss, sangheki
2018-04-27 12:06:46 +02:00
Kim Barrett
0432a1081e 8202230: Provide accessors for JNIHandles storage objects
Add JNIHandles::[weak_]global_handles().

Reviewed-by: coleenp, tschatzl
2018-04-27 03:57:00 -04:00
Tobias Hartmann
1787461d8a 8202179: Compilation fails with assert(n->is_expensive()) failed: expensive nodes with non-null control here only
Only treat the SqrtFNode as expensive if the control input is not NULL.

Reviewed-by: kvn, roland
2018-04-27 07:59:29 +02:00
Erik Österlund
f4893f5a9a 8201543: Modularize C1 GC barriers
Reviewed-by: pliden, rbackman, rkennke
2018-04-26 20:42:43 +02:00
Roland Westrelin
0ef11c31c7 8201367: assert(current != first_mem) failed: corrupted memory graph in superword code
Don't rely on the RPO order to find the "first" and "last" loads of the pack

Reviewed-by: kvn
2018-04-26 12:48:35 -07:00
Gerard Ziemski
edc81d17e1 8202150: [REDO] Split globals.hpp to factor out the Flag class
Factored out Flag out go globals, renamed to JVMFlag

Reviewed-by: coleenp, dholmes, kvn
2018-04-26 11:19:05 -05:00
Jini George
ccc74fdd60 8174994: SA: clhsdb printmdo throws WrongTypeException when attached to a process with CDS
Read in the md region of the CDS archive in SA and map the vtable addresses to the corresponding metadata type.

Reviewed-by: iklam, coleenp, ysuenaga, dholmes
2018-04-26 12:25:36 +05:30
Coleen Phillimore
8a427a07d8 8202164: Remove some unneeded BoolObjectClosure* is_alive parameters
Reviewed-by: kbarrett, stefank
2018-04-25 17:50:32 -04:00
Roland Westrelin
93691571bc 8200303: C2 should leverage profiling for lookupswitch/tableswitch
Reviewed-by: kvn, thartmann
2018-04-24 15:07:20 -07:00
Roland Westrelin
15a89eeee4 8201368: IfNode::fold_compares() may lead to incorrect execution
Reviewed-by: neliasso, kvn
2018-04-10 17:07:21 +02:00