< prev index next >

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

Print this page
rev 53044 : Concurrent stringtable processing

*** 281,299 **** --- 281,303 ---- // Heap is under updating: needs SVRB/SVWB barriers. UPDATEREFS_BITPOS = 3, // Heap is under traversal collection TRAVERSAL_BITPOS = 4, + + // We're cleaning weakrefs and similar constructs. + REFCLEANING_BITPOS = 5, }; enum GCState { STABLE = 0, HAS_FORWARDED = 1 << HAS_FORWARDED_BITPOS, MARKING = 1 << MARKING_BITPOS, EVACUATION = 1 << EVACUATION_BITPOS, UPDATEREFS = 1 << UPDATEREFS_BITPOS, TRAVERSAL = 1 << TRAVERSAL_BITPOS, + REFCLEANING = 1 << REFCLEANING_BITPOS, }; private: ShenandoahSharedBitmap _gc_state; ShenandoahSharedFlag _degenerated_gc_in_progress;
*** 314,333 **** --- 318,339 ---- void set_degenerated_gc_in_progress(bool in_progress); void set_full_gc_in_progress(bool in_progress); void set_full_gc_move_in_progress(bool in_progress); void set_concurrent_traversal_in_progress(bool in_progress); void set_has_forwarded_objects(bool cond); + void set_refcleaning_in_progress(bool in_progress); inline bool is_stable() const; inline bool is_idle() const; inline bool is_concurrent_mark_in_progress() const; inline bool is_update_refs_in_progress() const; inline bool is_evacuation_in_progress() const; inline bool is_degenerated_gc_in_progress() const; inline bool is_full_gc_in_progress() const; inline bool is_full_gc_move_in_progress() const; inline bool is_concurrent_traversal_in_progress() const; + inline bool is_refcleaning_in_progress() const; inline bool has_forwarded_objects() const; inline bool is_gc_in_progress_mask(uint mask) const; // ---------- GC cancellation and degeneration machinery //
< prev index next >