522 Commits

Author SHA1 Message Date
Thomas Schatzl
3df0f64e1f 8179679: Rearrange filters before card scanning
Implement micro-optimizations in the card scanning code enabled by JDK-8177044.

Reviewed-by: sjohanss, ehelin
2017-07-06 12:11:20 +02:00
Thomas Schatzl
10afb6f4f0 8183127: UpdateRSetDeferred should not enqueue cards for NULL references
Filter out NULL references during generating cards for an object.

Reviewed-by: mgerdin, ehelin
2017-07-06 10:42:02 +02:00
Jesper Wilhelmsson
efd1054686 8182299: Enable disabled clang warnings, build on OSX 10 + Xcode 8
8182656: Make the required changes in GC code to build on OSX 10 + Xcode 8
8182657: Make the required changes in Runtime code to build on OSX 10 + Xcode 8
8182658: Make the required changes in Compiler code to build on OSX 10 + Xcode 8

Co-authored-by: Paul Hohensee <hohensee@amazon.com>
Reviewed-by: jwilhelm, ehelin, phh
2017-07-06 01:50:26 +02: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
9f9bfb8d8e 8178501: Replace usages of align macros with calls to the align inline functions
Reviewed-by: mgerdin, tschatzl
2017-04-24 09:14:09 +02:00
Stefan Karlsson
d37b9c1f8d 8178500: Replace usages of round_to and round_down with align_up and align_down
Reviewed-by: rehn, tschatzl
2017-04-13 09:57:51 +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
Thomas Schatzl
0d6c9d4030 8179677: Let G1Remset::_conc_refined_cards only count number of cards concurrently refined
Reviewed-by: sjohanss, ehelin
2017-07-04 09:16:26 +02:00
Thomas Schatzl
4318d80587 8183394: Remove unused G1RemSet::n_workers() method
Reviewed-by: mgerdin, ehelin
2017-07-04 09:15:45 +02:00
Erik Helin
97e1f47359 8153360: G1HRRSFlushLogBuffersOnVerify with remembered set verification does not work
Reviewed-by: sjohanss, tschatzl
2017-07-03 17:19:11 +02:00
Erik Helin
19992b94e3 8183281: Remove unnecessary call to increment_gc_time_stamp
Reviewed-by: sjohanss, tschatzl
2017-07-03 14:24:07 +02:00
Erik Helin
9eb98aac44 8183124: Remove OopsInHeapRegionClosure
Reviewed-by: sjohanss, tschatzl
2017-06-28 14:38:10 +02:00
Erik Helin
f01d388b13 8183122: Rename RefineRecordRefsIntoCSCardTableEntryClosure to G1RefineCardClosure
Reviewed-by: sjohanss, tschatzl
2017-06-28 14:17:28 +02:00
Thomas Schatzl
ea07d0ec2a 8178151: Clean up G1RemSet files
Remove unnecessary class members, improve method visibility and naming

Reviewed-by: ehelin, sjohanss
2017-06-28 14:15:56 +02:00
Thomas Schatzl
be1f5ab521 8183006: Remove unused IterateOopClosureRegionClosure
Reviewed-by: sjohanss, ehelin
2017-06-28 12:11:55 +02:00
Thomas Schatzl
c0fff2604d 8183002: Remove unused concurrent parameter in HeapRegionManager::par_iterate
Reviewed-by: ehelin, sjohanss
2017-06-28 12:11:48 +02:00
Thomas Schatzl
52a1ad0388 8175554: Improve G1UpdateRSOrPushRefClosure
Micro-optimizations and improving naming for the G1UpdateRSOrPushRefClosure

Reviewed-by: ehelin, sangheki
2017-06-28 10:58:19 +02:00
Thomas Schatzl
8467de8bbc 8178148: Log more detailed information about scan rs phase
Add logging about the number of cards actually scanned, claimed and skipped during the Scan RS phase

Reviewed-by: ehelin, sangheki
2017-06-14 11:26:44 +02:00
Stefan Karlsson
ed94ecff28 8182696: Remove gcTrace.hpp include from referenceProcessor.hpp
Reviewed-by: tschatzl, kbarrett
2017-06-22 09:07:47 +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
Thomas Schatzl
f2b486212e 8177044: Remove _scan_top from HeapRegion
Remove the _scan_top member from HeapRegion using a per-gc pre-calculated table of scan limits that also subsumes other checks.

Reviewed-by: sangheki, kbarrett, ehelin
2017-06-02 13:48:01 +02:00
Thomas Schatzl
c982403296 8177707: Specialize G1RemSet::refine_card for concurrent/during safepoint refinement
Reviewed-by: ehelin, kbarrett
2017-06-02 13:47:54 +02:00
Thomas Schatzl
3e624c317a 8162928: Micro-optimizations in scanning the remembered sets
Reviewed-by: ehelin, kbarrett
2017-06-02 13:45:21 +02:00
Thomas Schatzl
92a1acb43b 8071280: Specialize HeapRegion::oops_on_card_seq_iterate_careful() for use during concurrent refinement and updating the rset
Reviewed-by: kbarrett, sangheki, ehelin
2017-06-02 13:45:15 +02:00
Coleen Phillimore
6659245612 8174749: Use hash table/oops for MemberName table
Add a Java type called ResolvedMethodName which is immutable and can be stored in a hashtable, that is weakly collected by gc

Reviewed-by: sspitsyn, stefank, jrose
2017-05-27 09:21:01 -04:00
Thomas Schatzl
4c944bd1ca 8180755: Remove use of bitMap.inline.hpp include from instanceKlass.hpp and c1_ValueSet.hpp
Reviewed-by: ehelin, coleenp, dholmes
2017-05-26 13:46:49 +02:00
Thomas Schatzl
707c566055 8177764: Humongous Reclaimed log output may be confusing
Make all log messages dealing with humongous reclaim report number of handled objects, not regions.

Reviewed-by: pliden, sjohanss
2017-05-12 11:41:05 +02:00
Chihiro Ito
61b56ef305 8166191: Missing spaces in log message during heap expansion
Reviewed-by: tschatzl
2017-05-12 11:38:20 +02:00
Alexander Harlap
4dc55a6593 8065402: G1 does not expand marking stack when mark stack overflow happens during concurrent marking
Simplified decision mechanism for marking stack expansion

Reviewed-by: kbarrett, tschatzl
2017-05-09 13:50:06 -04:00
Stefan Johansson
50ded710fd 8138888: Remove ExtendedOopClosure::apply_to_weak_ref_discovered_field
Reviewed-by: kbarrett, tschatzl
2017-05-09 11:03:45 +02:00
Kim Barrett
a65b58e18d 8178836: Improve PtrQueue index abstraction
Prefer element indexes where possible.

Reviewed-by: shade, mgerdin
2017-05-08 07:16:10 -04:00
Alexander Harlap
cf7c7fedcd 8178542: G1: VM hangs during shutdown due to mark stack overflow
Removed not needed call to clear_has_overflown() to avoid inconsistent state

Reviewed-by: kbarrett, sangheki
2017-05-01 10:50:38 -04:00
Kim Barrett
5fb44c25c7 8169517: WhiteBox should provide concurrent GC phase control
Added WhiteBox API and G1 implementation.

Reviewed-by: shade, dfazunen
2017-04-13 16:38:39 -04:00
Thomas Schatzl
de637b636d 8176885: Clear Claimed Marks log message at wrong location in the log
Move message and code to the pre evacuation phase part of the GC

Reviewed-by: sjohanss, sangheki
2017-03-28 09:13:00 +02:00
Stefan Johansson
d11fb72564 8171238: Unify cleanup code used in G1 Remark and Full GC marking
Reviewed-by: tschatzl, pliden
2017-03-24 10:27:04 +01:00
Thomas Schatzl
bd1aac2cd3 8177453: Start_new_collection_set() timing done during wrong type of GC
Move timing code from full gc to young gc.

Reviewed-by: sjohanss, mgerdin
2017-03-24 10:26:58 +01:00
Thomas Schatzl
dd84bb9cff 8176881: DerivedPointerTable Update log message in wrong order in regards to Redirty Cards
Reviewed-by: sjohanss, jprovino
2017-03-21 11:21:11 +01:00
Thomas Schatzl
6a9ca1701d 8155094: Add logging for long lasting methods found in JDK-8152948
Adds logging for DerivedPointerTable, TLAB preparation and resizing, and new collection set setup work

Reviewed-by: kbarrett, sangheki
2017-03-16 09:05:20 +01:00
Thomas Schatzl
7bca463789 8168467: Use TaskEntry as task mark queue elements
Change the mark stack to use TaskEntry queue elements to improve type safety instead of casting around raw pointers.

Reviewed-by: kbarrett, sangheki
2017-03-15 11:44:46 +01:00
Alexander Harlap
6fdf396624 8165674: G1CMMarkStack::out_of_memory possibly redundant
Remove the redundant G1CMMarkStack::_out_of_memory member.

Reviewed-by: kbarrett, tschatzl
2017-03-09 10:48:44 +01:00
Gunter Haug
e44e774bbe 8175900: Assertion too strict in G1CollectedHeap::new_mutator_alloc_region
Reviewed-by: simonis, tschatzl, kbarrett
2017-02-27 12:57:16 +01:00
Thomas Schatzl
8d405d171c 8071278: Fix the closure mess in G1RemSet::refine_card()
Remove the use of many nested closure in the code to refine a card.

Reviewed-by: kbarrett, sjohanss
2017-03-06 17:03:35 +01:00
Kim Barrett
b067fc774d 8175221: Cleanup DirtyCardQueueSet::concatenate_log
Concatenate_log calls flush, flush no longer checks "permanent"

Reviewed-by: tschatzl, shade
2017-03-04 15:56:22 -05:00
Joseph Provino
f404ded34f Merge 2017-02-27 23:20:05 +01:00
Joseph Provino
68fa501522 8168038: Some methods in G1RemSet are virtual unnecessarily
G1RemSet has a number of virtual functions, yet is derived from CHeapObj and has no subclasses.

Reviewed-by: kbarrett, tschatzl
2017-02-27 12:41:41 -05:00
Alexander Harlap
725e1cfafe 8151045: Remove code duplication in PLABStats/G1EvacStats::adjust_desired_plab_sz
Move class specific code to the helper method

Reviewed-by: kbarrett, tschatzl
2017-02-23 12:50:49 -05:00
Bob Vandette
929fc23c45 Merge 2017-02-24 12:41:26 -05:00
Stefan Johansson
ae38e65467 8173764: G1 BOT wrongly assumes that objects must always begin at the start of G1BlockOffsetTablePart
Reviewed-by: tschatzl, kbarrett
2017-02-24 10:41:56 +01:00
Thomas Schatzl
6fb4d7356b 8173229: Wrong assert whether all remembered set entries have been iterated over in presence of coarsenings
Remove asserts as they are almost useless.

Reviewed-by: mgerdin, ehelin
2017-01-27 13:12:53 +01:00