< prev index next >

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

Print this page




 673 
 674   // Call before/after evacuation.
 675   void enter_evacuation();
 676   void leave_evacuation();
 677 
 678 // ---------- Helper functions
 679 //
 680 public:
 681   template <class T>
 682   inline oop evac_update_with_forwarded(T* p);
 683 
 684   template <class T>
 685   inline oop maybe_update_with_forwarded(T* p);
 686 
 687   template <class T>
 688   inline oop maybe_update_with_forwarded_not_null(T* p, oop obj);
 689 
 690   template <class T>
 691   inline oop update_with_forwarded_not_null(T* p, oop obj);
 692 
 693   inline oop atomic_compare_exchange_oop(oop n, narrowOop* addr, oop c);
 694   inline oop atomic_compare_exchange_oop(oop n, oop* addr, oop c);
 695 
 696   void trash_humongous_region_at(ShenandoahHeapRegion *r);
 697 
 698   void deduplicate_string(oop str);
 699 
 700   void stop_concurrent_marking();
 701 
 702 private:
 703   void trash_cset_regions();
 704   void update_heap_references(bool concurrent);
 705 
 706 // ---------- Testing helpers functions
 707 //
 708 private:
 709   ShenandoahSharedFlag _inject_alloc_failure;
 710 
 711   void try_inject_alloc_failure();
 712   bool should_inject_alloc_failure();
 713 };
 714 


 673 
 674   // Call before/after evacuation.
 675   void enter_evacuation();
 676   void leave_evacuation();
 677 
 678 // ---------- Helper functions
 679 //
 680 public:
 681   template <class T>
 682   inline oop evac_update_with_forwarded(T* p);
 683 
 684   template <class T>
 685   inline oop maybe_update_with_forwarded(T* p);
 686 
 687   template <class T>
 688   inline oop maybe_update_with_forwarded_not_null(T* p, oop obj);
 689 
 690   template <class T>
 691   inline oop update_with_forwarded_not_null(T* p, oop obj);
 692 
 693   static inline oop cas_oop(oop n, narrowOop* addr, oop c);
 694   static inline oop cas_oop(oop n, oop* addr, oop c);
 695 
 696   void trash_humongous_region_at(ShenandoahHeapRegion *r);
 697 
 698   void deduplicate_string(oop str);
 699 
 700   void stop_concurrent_marking();
 701 
 702 private:
 703   void trash_cset_regions();
 704   void update_heap_references(bool concurrent);
 705 
 706 // ---------- Testing helpers functions
 707 //
 708 private:
 709   ShenandoahSharedFlag _inject_alloc_failure;
 710 
 711   void try_inject_alloc_failure();
 712   bool should_inject_alloc_failure();
 713 };
 714 
< prev index next >