178 Commits

Author SHA1 Message Date
Stefan Karlsson
d4280206fd 8144992: Remove OopIterateClosure::idempotent
Reviewed-by: pliden, kbarrett
2018-06-26 13:55:17 +02:00
Stefan Karlsson
5012044e63 8205607: Use oop_iterate instead of oop_iterate_no_header
Reviewed-by: pliden, kbarrett
2018-06-26 13:54:19 +02:00
Stefan Karlsson
11813888b8 8204540: Automatic oop closure devirtualization
Reviewed-by: kbarrett, eosterlund
2018-05-26 06:59:49 +02:00
Kim Barrett
b84c23399e 8205459: Rename Access API flag decorators
Rename OOP_NOT_NULL, IN_HEAP_ARRAY, AS_DEST_NOT_INITIALIZED

Reviewed-by: pliden, stefank
2018-06-22 17:46:58 -04:00
Chris Phillips
561ec75b9b 8203030: Zero s390 31 bit size_t type conflicts in shared code
Cast to size_t or change to size_t foe compatibility with other archs.

Reviewed-by: pliden, dholmes
2018-06-19 10:00:39 -04:00
Per Lidén
0cb0992377 8205064: Fail immediately if an unavailable GC is selected
Reviewed-by: rkennke, shade
2018-06-19 12:11:37 +02:00
Stefan Karlsson
3905df21f5 8204538: Split ScanClosure and ScanClosureWithParBarrier
Reviewed-by: eosterlund, tschatzl, kbarrett
2018-06-07 10:11:36 +02:00
Matthias Baesken
effacccf36 8205091: AIX: build errors in hotspot after 8203641: Refactor String Deduplication into shared
Reviewed-by: simonis, stuefe, dholmes
2018-06-18 14:36:50 +02:00
Thomas Schatzl
7f9bbfa767 8043575: Dynamically parallelize reference processing work
In G1 automatically set the number of parallel Reference processing threads

Co-authored-by: Sangheon Kim <sangheon.kim@oracle.com>
Reviewed-by: sangheki, kbarrett
2018-06-18 12:11:59 +02:00
Thomas Schatzl
1a0553e4eb 8202845: Refactor reference processing for improved parallelism
Fold reference processing's nine phases into four to decrease startup and termination time of this phase.

Reviewed-by: kbarrett, sjohanss
2018-05-29 09:26:00 +02:00
Kim Barrett
05b5a78903 8204939: Change Access nomenclature: root to native
Rename RootAccess => NativeAccess, IN_ROOT => IN_NATIVE, and related cleanups.

Reviewed-by: pliden, stefank, coleenp
2018-06-15 16:53:58 -04:00
Jean Christophe Beyler
6129ed590c 8203394: Implementation of JEP 331: Low-Overhead Heap Profiling
Implement Low-Overhead Heap Profiling

Reviewed-by: eosterlund, gthornbr, rehn, sspitsyn, tschatzl
2018-06-15 00:49:54 -07:00
Zhengyu Gu
f6c168053f 8203641: Refactor String Deduplication into shared
Allows string deduplication to be shared among different collectors

Reviewed-by: tschatzl, rkennke
2018-06-14 09:59:21 -04:00
Roman Kennke
cc206eaca5 8204685: Abstraction for TLAB dummy object
Reviewed-by: tschatzl, shade
2018-06-13 10:15:35 +02:00
Per Lidén
e7af7a4aef 8204210: Implementation: JEP 333: ZGC: A Scalable Low-Latency Garbage Collector (Experimental)
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Erik Osterlund <erik.osterlund@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Kim Barrett <kim.barrett@oracle.com>
Co-authored-by: Nils Eliasson <nils.eliasson@oracle.com>
Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Co-authored-by: Roland Westrelin <rwestrel@redhat.com>
Co-authored-by: Coleen Phillimore <coleen.phillimore@oracle.com>
Co-authored-by: Robbin Ehn <robbin.ehn@oracle.com>
Co-authored-by: Gerard Ziemski <gerard.ziemski@oracle.com>
Co-authored-by: Hugh Wilkinson <hugh.wilkinson@intel.com>
Co-authored-by: Sandhya Viswanathan <sandhya.viswanathan@intel.com>
Co-authored-by: Bill Wheeler <bill.npo.wheeler@intel.com>
Co-authored-by: Vinay K. Awasthi <vinay.k.awasthi@intel.com>
Co-authored-by: Yasumasa Suenaga <yasuenag@gmail.com>
Reviewed-by: pliden, stefank, eosterlund, ehelin, sjohanss, rbackman, coleenp, ihse, jgeorge, lmesnik, rkennke
2018-06-12 17:40:28 +02:00
Aleksey Shipilev
a1518ac9b2 8204180: Implementation: JEP 318: Epsilon, A No-Op Garbage Collector
Introduce Epsilon GC

Reviewed-by: rkennke, ihse, pliden, eosterlund, lmesnik, jgeorge, stefank
2018-06-12 15:03:00 +02:00
Aleksey Shipilev
411a0016dd 8204850: BarrierSet::make_* should be static
Reviewed-by: stuefe, tschatzl
2018-06-12 10:01:23 +02:00
Kim Barrett
d3e96fdd91 8204097: Simplify OopStorage::AllocateList block entry access
Removed obsolete support for blocks being in multiple lists.

Reviewed-by: coleenp, tschatzl
2018-06-11 22:35:07 -04:00
Erik Österlund
ff7db9b11a 8204554: JFR TLAB tracing broken after 8202776
Reviewed-by: rkennke, stefank
2018-06-07 17:40:15 +02:00
Robbin Ehn
66f8951e15 8195097: Make it possible to process StringTable outside safepoint
Reviewed-by: coleenp, gziemski, iklam, jiangli
2018-06-07 14:11:56 +02:00
Coleen Phillimore
892a2af03f 8204301: Make OrderAccess functions available to hpp rather than inline.hpp files
Move orderAccess.inline.hpp into orderAccess.hpp and remove os.hpp inclusion and conditional os::is_MP() for fence on x86 platforms

Reviewed-by: dholmes, hseigel
2018-06-06 10:45:40 -04:00
Roman Kennke
26b8ea76f5 8202776: Modularize GC allocations in runtime
Reviewed-by: eosterlund, shade
2018-06-05 19:13:53 +02:00
Kim Barrett
056f7b3bd8 8203319: JDK-8201487 disabled too much queue balancing
Sometimes ignore ParallelRefProcBalancingEnabled.

Reviewed-by: tschatzl, sjohanss
2018-06-05 09:15:03 -04:00
Roman Kennke
482e40cc8c 8198285: More consistent Access API for arraycopy
Reviewed-by: eosterlund, shade
2018-06-04 23:01:48 +02:00
Kim Barrett
dd3d24341b 8204179: [BACKOUT] OopStorage should use GlobalCounter
Backout JDK-8202945

Reviewed-by: eosterlund, pliden
2018-05-31 15:37:18 -04:00
Kim Barrett
d2dd37cf1f 8202945: OopStorage should use GlobalCounter
Use GlobalCounter rather than private mechanism.

Reviewed-by: eosterlund, tschatzl, rehn
2018-05-29 18:10:09 -04:00
Kim Barrett
ce8c6887bb 8203843: BasicParState::default_estimated_thread_count(false) can return 0 in gtest
Ensure minimum estimated thread count is 1.

Reviewed-by: tschatzl, stuefe, rehn
2018-05-29 16:02:23 -04:00
Coleen Phillimore
e3a3941c9a 8202813: Move vm_weak processing from SystemDictionary to WeakProcessor
SystemDictionary has all strong roots.  The weak oop_storage is processed by the WeakProcessor so it can be scanned and cleared concurrently and/or by parallel threads.

Reviewed-by: kbarrett, sjohanss
2018-05-29 15:50:27 -04:00
Gerard Ziemski
90cc14cd60 8133564: Runtime - 2nd followup to Validate JVM Command-Line Flag Arguments
Moved print function into JVMFlag, cleaned up include headers.

Reviewed-by: coleenp, hseigel
2018-05-29 11:04:56 -05:00
Kim Barrett
6c20824cda 8203028: Simplify reference processing in light of JDK-8175797
Removed special handling of Reference.next

Reviewed-by: tschatzl, sjohanss, mchung
2018-05-26 03:11:50 -04:00
Kim Barrett
66b0c9fe9c 8202863: Rename OopStorage inner collection classes
Rename BlockArray, BlockList, BlockEntry

Reviewed-by: coleenp
2018-05-22 03:46:52 -04:00
Erik Österlund
53ec88908c 8202377: Modularize C2 GC barriers
Reviewed-by: neliasso, roland
2018-05-18 14:51:06 +02:00
Erik Gahlin
a060be188d 8199712: Flight Recorder
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Reviewed-by: coleenp, ihse, erikj, dsamersoff, mseledtsov, egahlin, mgronlun
2018-05-15 20:24:34 +02:00
Per Lidén
a6b12a847c 8202994: Add support for undoing last TLAB allocation
Reviewed-by: shade, stefank
2018-05-14 15:42:58 +02:00
Thomas Schatzl
ec2d9845e0 8201491: G1 support for java.lang.ref.Reference precleaning
Implement single-threaded concurrent reference precleaning for G1.

Reviewed-by: sangheki, kbarrett
2018-05-14 11:47:03 +02:00
Goetz Lindenmaier
b72846bc20 8202745: Remove hyphens from "out-of-bounds"
Reviewed-by: rriggs, dholmes
2018-05-07 23:07:01 +02:00
Thomas Schatzl
b34a8c43f1 8202780: Remove EnqueueTask related code from ReferenceProcessor after JDK-8202017
Remove code obsoleted by JDK-8202017

Reviewed-by: kbarrett, sangheki
2018-05-09 13:37:05 +02:00
Stefan Johansson
816d8f4257 8202662: JFR tests fails: Could not find leak with class
Reviewed-by: pliden, kbarrett
2018-05-09 11:24:12 +02:00
Stefan Karlsson
fc99089e00 8202722: Move marksweep_init into GC code
Reviewed-by: ehelin, kbarrett
2018-05-07 16:16:17 +02:00
Stefan Karlsson
99072b90d7 8202647: Add deduplicate_string function to CollectedHeap
Reviewed-by: rehn, sjohanss
2018-05-07 14:57:25 +02:00
Thomas Schatzl
9ed9e26d5c 8202781: Fix typo in DiscoveredListIterator::complete_enqeue
Reviewed-by: kbarrett
2018-05-08 16:49:20 +02:00
Thomas Schatzl
035d0190a3 8202017: Merge Reference Enqueuing phase with phase 3 of Reference processing
Do reference enqueuing work directly in phase 3 after every Reference.

Reviewed-by: kbarrett, sangheki
2018-05-08 10:01:29 +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
Erik Österlund
983911c697 8202083: Remove explicit CMS checks in CardTableBarrierSet
Reviewed-by: kbarrett
2018-05-07 10:36:38 +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
Stefan Karlsson
1cb95bd3d1 8200729: Conditional compilation of GCs
Reviewed-by: ehelin, coleenp, kvn, ihse
2018-05-04 11:41:35 +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