8329580: Parallel: Remove VerifyObjectStartArray

Reviewed-by: tschatzl, gli
This commit is contained in:
Albert Mingkun Yang 2024-04-04 08:03:52 +00:00
parent 8efd7aa6c1
commit a169c06361
6 changed files with 2 additions and 48 deletions

View File

@ -377,24 +377,6 @@ void PSOldGen::verify() {
object_space()->verify();
}
class VerifyObjectStartArrayClosure : public ObjectClosure {
ObjectStartArray* _start_array;
public:
VerifyObjectStartArrayClosure(ObjectStartArray* start_array) :
_start_array(start_array) { }
virtual void do_object(oop obj) {
HeapWord* test_addr = cast_from_oop<HeapWord*>(obj) + 1;
guarantee(_start_array->object_start(test_addr) == cast_from_oop<HeapWord*>(obj), "ObjectStartArray cannot find start of object");
}
};
void PSOldGen::verify_object_start_array() {
VerifyObjectStartArrayClosure check(&_start_array);
object_iterate(&check);
}
#ifndef PRODUCT
void PSOldGen::record_spaces_top() {
assert(ZapUnusedHeapArea, "Not mangling unused space");

View File

@ -149,7 +149,6 @@ class PSOldGen : public CHeapObj<mtGC> {
virtual void print_on(outputStream* st) const;
void verify();
void verify_object_start_array();
// Performance Counter support
void update_counters();

View File

@ -913,12 +913,6 @@ void PSParallelCompact::pre_compact()
Universe::verify("Before GC");
}
// Verify object start arrays
if (VerifyObjectStartArray &&
VerifyBeforeGC) {
heap->old_gen()->verify_object_start_array();
}
DEBUG_ONLY(mark_bitmap()->verify_clear();)
DEBUG_ONLY(summary_data().verify_clear();)
@ -1535,12 +1529,6 @@ bool PSParallelCompact::invoke_no_policy(bool maximum_heap_compaction) {
Universe::verify("After GC");
}
// Re-verify object start arrays
if (VerifyObjectStartArray &&
VerifyAfterGC) {
old_gen->verify_object_start_array();
}
if (ZapUnusedHeapArea) {
old_gen->object_space()->check_mangled_unused_area_complete();
}

View File

@ -419,12 +419,6 @@ bool PSScavenge::invoke_no_policy() {
// Let the size policy know we're starting
size_policy->minor_collection_begin();
// Verify the object start arrays.
if (VerifyObjectStartArray &&
VerifyBeforeGC) {
old_gen->verify_object_start_array();
}
// Verify no unmarked old->young roots
if (VerifyRememberedSets) {
heap->card_table()->verify_all_young_refs_imprecise();
@ -634,12 +628,6 @@ bool PSScavenge::invoke_no_policy() {
DerivedPointerTable::update_pointers();
#endif
// Re-verify object start arrays
if (VerifyObjectStartArray &&
VerifyAfterGC) {
old_gen->verify_object_start_array();
}
if (VerifyRememberedSets) {
heap->card_table()->verify_all_young_refs_imprecise();
}

View File

@ -500,9 +500,6 @@
product(bool, VerifyRememberedSets, false, DIAGNOSTIC, \
"Verify GC remembered sets") \
\
product(bool, VerifyObjectStartArray, true, DIAGNOSTIC, \
"Verify GC object start array if verify before/after") \
\
product(bool, DisableExplicitGC, false, \
"Ignore calls to System.gc()") \
\

View File

@ -36,7 +36,7 @@ package gc.g1;
* -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
* -XX:+VerifyBeforeGC -XX:+VerifyDuringGC -XX:+VerifyAfterGC
* -XX:+UseG1GC -XX:+G1VerifyHeapRegionCodeRoots
* -XX:+VerifyRememberedSets -XX:+VerifyObjectStartArray
* -XX:+VerifyRememberedSets
* -XX:+G1VerifyBitmaps
* gc.g1.TestVerificationInConcurrentCycle
*/
@ -55,7 +55,7 @@ package gc.g1;
* -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
* -XX:+VerifyBeforeGC -XX:+VerifyDuringGC -XX:+VerifyAfterGC
* -XX:+UseG1GC -XX:+G1VerifyHeapRegionCodeRoots
* -XX:+VerifyRememberedSets -XX:+VerifyObjectStartArray
* -XX:+VerifyRememberedSets
* gc.g1.TestVerificationInConcurrentCycle
*/