hotspot/src/share/vm/gc_implementation/g1/g1MarkSweep.cpp
changeset 1610 5dddd195cc86
parent 1606 dcf9714addbe
child 1623 a0dd9009e992
equal deleted inserted replaced
1608:0a375b5fb8e1 1610:5dddd195cc86
    33 
    33 
    34   // hook up weak ref data so it can be used during Mark-Sweep
    34   // hook up weak ref data so it can be used during Mark-Sweep
    35   assert(GenMarkSweep::ref_processor() == NULL, "no stomping");
    35   assert(GenMarkSweep::ref_processor() == NULL, "no stomping");
    36   assert(rp != NULL, "should be non-NULL");
    36   assert(rp != NULL, "should be non-NULL");
    37   GenMarkSweep::_ref_processor = rp;
    37   GenMarkSweep::_ref_processor = rp;
    38   rp->snap_policy(clear_all_softrefs);
    38   rp->setup_policy(clear_all_softrefs);
    39 
    39 
    40   // When collecting the permanent generation methodOops may be moving,
    40   // When collecting the permanent generation methodOops may be moving,
    41   // so we either have to flush all bcp data or convert it into bci.
    41   // so we either have to flush all bcp data or convert it into bci.
    42   CodeCache::gc_prologue();
    42   CodeCache::gc_prologue();
    43   Threads::gc_prologue();
    43   Threads::gc_prologue();
   121                            &GenMarkSweep::follow_root_closure,
   121                            &GenMarkSweep::follow_root_closure,
   122                            &GenMarkSweep::follow_root_closure);
   122                            &GenMarkSweep::follow_root_closure);
   123 
   123 
   124   // Process reference objects found during marking
   124   // Process reference objects found during marking
   125   ReferenceProcessor* rp = GenMarkSweep::ref_processor();
   125   ReferenceProcessor* rp = GenMarkSweep::ref_processor();
   126   rp->snap_policy(clear_all_softrefs);
   126   rp->setup_policy(clear_all_softrefs);
   127   rp->process_discovered_references(&GenMarkSweep::is_alive,
   127   rp->process_discovered_references(&GenMarkSweep::is_alive,
   128                                     &GenMarkSweep::keep_alive,
   128                                     &GenMarkSweep::keep_alive,
   129                                     &GenMarkSweep::follow_stack_closure,
   129                                     &GenMarkSweep::follow_stack_closure,
   130                                     NULL);
   130                                     NULL);
   131 
   131