< prev index next >

src/share/vm/gc/parallel/psScavenge.cpp

Print this page
rev 12906 : [mq]: gc_interface

*** 23,33 **** */ #include "precompiled.hpp" #include "classfile/stringTable.hpp" #include "code/codeCache.hpp" - #include "gc/parallel/cardTableExtension.hpp" #include "gc/parallel/gcTaskManager.hpp" #include "gc/parallel/parallelScavengeHeap.hpp" #include "gc/parallel/psAdaptiveSizePolicy.hpp" #include "gc/parallel/psMarkSweep.hpp" #include "gc/parallel/psParallelCompact.inline.hpp" --- 23,32 ----
*** 58,68 **** #include "utilities/stack.inline.hpp" HeapWord* PSScavenge::_to_space_top_before_gc = NULL; int PSScavenge::_consecutive_skipped_scavenges = 0; ReferenceProcessor* PSScavenge::_ref_processor = NULL; ! CardTableExtension* PSScavenge::_card_table = NULL; bool PSScavenge::_survivor_overflow = false; uint PSScavenge::_tenuring_threshold = 0; HeapWord* PSScavenge::_young_generation_boundary = NULL; uintptr_t PSScavenge::_young_generation_boundary_compressed = 0; elapsedTimer PSScavenge::_accumulated_time; --- 57,67 ---- #include "utilities/stack.inline.hpp" HeapWord* PSScavenge::_to_space_top_before_gc = NULL; int PSScavenge::_consecutive_skipped_scavenges = 0; ReferenceProcessor* PSScavenge::_ref_processor = NULL; ! PSCardTable* PSScavenge::_card_table = NULL; bool PSScavenge::_survivor_overflow = false; uint PSScavenge::_tenuring_threshold = 0; HeapWord* PSScavenge::_young_generation_boundary = NULL; uintptr_t PSScavenge::_young_generation_boundary_compressed = 0; elapsedTimer PSScavenge::_accumulated_time;
*** 318,328 **** old_gen->verify_object_start_array(); } // Verify no unmarked old->young roots if (VerifyRememberedSets) { ! CardTableExtension::verify_all_young_refs_imprecise(); } assert(young_gen->to_space()->is_empty(), "Attempt to scavenge with live objects in to_space"); young_gen->to_space()->clear(SpaceDecorator::Mangle); --- 317,327 ---- old_gen->verify_object_start_array(); } // Verify no unmarked old->young roots if (VerifyRememberedSets) { ! PSCardTable::verify_all_young_refs_imprecise(); } assert(young_gen->to_space()->is_empty(), "Attempt to scavenge with live objects in to_space"); young_gen->to_space()->clear(SpaceDecorator::Mangle);
*** 599,610 **** // Verify all old -> young cards are now precise if (VerifyRememberedSets) { // Precise verification will give false positives. Until this is fixed, // use imprecise verification. ! // CardTableExtension::verify_all_young_refs_precise(); ! CardTableExtension::verify_all_young_refs_imprecise(); } if (TraceYoungGenTime) accumulated_time()->stop(); young_gen->print_used_change(pre_gc_values.young_gen_used()); --- 598,609 ---- // Verify all old -> young cards are now precise if (VerifyRememberedSets) { // Precise verification will give false positives. Until this is fixed, // use imprecise verification. ! // PSCardTable::verify_all_young_refs_precise(); ! PSCardTable::verify_all_young_refs_imprecise(); } if (TraceYoungGenTime) accumulated_time()->stop(); young_gen->print_used_change(pre_gc_values.young_gen_used());
*** 758,766 **** ParallelGCThreads, // mt discovery degree true, // atomic_discovery NULL); // header provides liveness info // Cache the cardtable ! _card_table = barrier_set_cast<CardTableExtension>(heap->barrier_set()); _counters = new CollectorCounters("PSScavenge", 0); } --- 757,765 ---- ParallelGCThreads, // mt discovery degree true, // atomic_discovery NULL); // header provides liveness info // Cache the cardtable ! _card_table = heap->card_table(); _counters = new CollectorCounters("PSScavenge", 0); }
< prev index next >