< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.hpp

Print this page
@@ -41,11 +41,11 @@
  class ShenandoahConcurrentGC : public ShenandoahGC {
    friend class VM_ShenandoahInitMark;
    friend class VM_ShenandoahFinalMarkStartEvac;
    friend class VM_ShenandoahInitUpdateRefs;
    friend class VM_ShenandoahFinalUpdateRefs;
-   friend class VM_ShenandoahFinalVerify;
+   friend class VM_ShenandoahFinalRoots;
  
  protected:
    ShenandoahConcurrentMark    _mark;
  
  private:

@@ -67,19 +67,19 @@
    // call the entry method below
    void vmop_entry_init_mark();
    void vmop_entry_final_mark();
    void vmop_entry_init_update_refs();
    void vmop_entry_final_update_refs();
-   void vmop_entry_final_verify();
+   void vmop_entry_final_roots(bool at_gc_end);
  
    // Entry methods to normally STW GC operations. These set up logging, monitoring
    // and workers for next VM operation
    void entry_init_mark();
    void entry_final_mark();
    void entry_init_update_refs();
    void entry_final_update_refs();
-   void entry_final_verify();
+   void entry_final_roots(bool at_gc_end);
  
    // Entry methods to normally concurrent GC operations. These set up logging, monitoring
    // for concurrent operation.
    void entry_reset();
    void entry_mark_roots();

@@ -89,23 +89,18 @@
    void entry_weak_refs();
    void entry_weak_roots();
    void entry_class_unloading();
    void entry_strong_roots();
    void entry_cleanup_early();
+   void entry_complete_abbreviated_cycle();
    void entry_evacuate();
    void entry_update_thread_roots();
    void entry_update_card_table();
    void entry_concurrent_update_refs_prepare(ShenandoahHeap* heap);
    void entry_update_refs();
    void entry_cleanup_complete();
  
-   // This is the last phase of a cycle which performs no evacuations
-   bool entry_final_roots();
- 
-   // Called when the collection set is empty, but the generational mode has regions to promote in place
-   void entry_promote_in_place() const;
- 
    // Actual work for the phases
    void op_reset();
    void op_init_mark();
    void op_mark_roots();
    void op_mark();

@@ -120,11 +115,10 @@
    void op_init_update_refs();
    void op_update_refs();
    void op_update_thread_roots();
    void op_final_update_refs();
  
-   void op_verify_final();
    void op_cleanup_complete();
    void op_reset_after_collect();
  
    // Check GC cancellation and abort concurrent GC
    bool check_cancellation_and_abort(ShenandoahDegenPoint point);

@@ -133,20 +127,17 @@
    void entry_reset_after_collect();
  
  private:
    void start_mark();
  
-   bool complete_abbreviated_cycle();
- 
    static bool has_in_place_promotions(ShenandoahHeap* heap);
  
    // Messages for GC trace events, they have to be immortal for
    // passing around the logging/tracing systems
    const char* init_mark_event_message() const;
    const char* final_mark_event_message() const;
-   const char* verify_final_event_message() const;
-   const char* conc_final_roots_event_message() const;
+   const char* final_roots_event_message() const;
    const char* conc_mark_event_message() const;
    const char* conc_reset_event_message() const;
    const char* conc_reset_after_collect_event_message() const;
    const char* conc_weak_refs_event_message() const;
    const char* conc_weak_roots_event_message() const;
< prev index next >