Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp @ 10373:3a4805ad0005
8015244: G1: Verification after a full GC is incorrectly placed.
Summary: In a full GC, move the verification after the GC to after RSet rebuilding. Verify RSet entries during a full GC under control of a flag.
Reviewed-by: tschatzl, brutisso
author | johnc |
---|---|
date | Tue, 04 Jun 2013 10:04:06 -0700 |
parents | e72f7eecc96d |
children | f2110083203d |
comparison
equal
deleted
inserted
replaced
10372:e72f7eecc96d | 10373:3a4805ad0005 |
---|---|
1415 | 1415 |
1416 COMPILER2_PRESENT(DerivedPointerTable::update_pointers()); | 1416 COMPILER2_PRESENT(DerivedPointerTable::update_pointers()); |
1417 | 1417 |
1418 MemoryService::track_memory_usage(); | 1418 MemoryService::track_memory_usage(); |
1419 | 1419 |
1420 verify_after_gc(); | |
1421 | |
1422 assert(!ref_processor_stw()->discovery_enabled(), "Postcondition"); | 1420 assert(!ref_processor_stw()->discovery_enabled(), "Postcondition"); |
1423 ref_processor_stw()->verify_no_references_recorded(); | 1421 ref_processor_stw()->verify_no_references_recorded(); |
1424 | 1422 |
1425 // Delete metaspaces for unloaded class loaders and clean up loader_data graph | 1423 // Delete metaspaces for unloaded class loaders and clean up loader_data graph |
1426 ClassLoaderDataGraph::purge(); | 1424 ClassLoaderDataGraph::purge(); |
1518 // Update the number of full collections that have been completed. | 1516 // Update the number of full collections that have been completed. |
1519 increment_old_marking_cycles_completed(false /* concurrent */); | 1517 increment_old_marking_cycles_completed(false /* concurrent */); |
1520 | 1518 |
1521 _hrs.verify_optional(); | 1519 _hrs.verify_optional(); |
1522 verify_region_sets_optional(); | 1520 verify_region_sets_optional(); |
1521 | |
1522 verify_after_gc(); | |
1523 | 1523 |
1524 // Start a new incremental collection set for the next pause | 1524 // Start a new incremental collection set for the next pause |
1525 assert(g1_policy()->collection_set() == NULL, "must be"); | 1525 assert(g1_policy()->collection_set() == NULL, "must be"); |
1526 g1_policy()->start_incremental_cset_building(); | 1526 g1_policy()->start_incremental_cset_building(); |
1527 | 1527 |