src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp

changeset 5196
8dbc025ff709
parent 5194
eda078b01c65
child 5202
47bdfb3d010f
     1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp	Mon May 27 12:56:34 2013 +0200
     1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp	Mon May 27 12:58:42 2013 +0200
     1.3 @@ -450,11 +450,9 @@
     1.4        reference_processor()->enqueue_discovered_references(NULL);
     1.5      }
     1.6  
     1.7 -      // Unlink any dead interned Strings
     1.8 -      StringTable::unlink(&_is_alive_closure);
     1.9 -      // Process the remaining live ones
    1.10 -      PSScavengeRootsClosure root_closure(promotion_manager);
    1.11 -      StringTable::oops_do(&root_closure);
    1.12 +    // Unlink any dead interned Strings and process the remaining live ones.
    1.13 +    PSScavengeRootsClosure root_closure(promotion_manager);
    1.14 +    StringTable::unlink_or_oops_do(&_is_alive_closure, &root_closure);
    1.15  
    1.16      // Finally, flush the promotion_manager's labs, and deallocate its stacks.
    1.17      PSPromotionManager::post_scavenge();

mercurial