< prev index next > src/hotspot/share/gc/shenandoah/shenandoahDegeneratedGC.hpp
Print this page
#define SHARE_GC_SHENANDOAH_SHENANDOAHDEGENERATEDGC_HPP
#include "gc/shenandoah/shenandoahGC.hpp"
class VM_ShenandoahDegeneratedGC;
class ShenandoahDegenGC : public ShenandoahGC {
friend class VM_ShenandoahDegeneratedGC;
private:
const ShenandoahDegenPoint _degen_point;
bool _abbreviated;
public:
! ShenandoahDegenGC(ShenandoahDegenPoint degen_point);
bool collect(GCCause::Cause cause);
private:
void vmop_degenerated();
void entry_degenerated();
#define SHARE_GC_SHENANDOAH_SHENANDOAHDEGENERATEDGC_HPP
#include "gc/shenandoah/shenandoahGC.hpp"
class VM_ShenandoahDegeneratedGC;
+ class ShenandoahGeneration;
class ShenandoahDegenGC : public ShenandoahGC {
friend class VM_ShenandoahDegeneratedGC;
private:
const ShenandoahDegenPoint _degen_point;
+ ShenandoahGeneration* _generation;
bool _abbreviated;
public:
! ShenandoahDegenGC(ShenandoahDegenPoint degen_point, ShenandoahGeneration* generation);
bool collect(GCCause::Cause cause);
private:
void vmop_degenerated();
void entry_degenerated();
// Turns this degenerated cycle into a full gc without leaving the safepoint
void upgrade_to_full();
const char* degen_event_message(ShenandoahDegenPoint point) const;
+
+ bool has_in_place_promotions(const ShenandoahHeap* heap) const;
};
#endif // SHARE_GC_SHENANDOAH_SHENANDOAHDEGENERATEDGC_HPP
< prev index next >