< prev index next >
src/share/vm/memory/cardGeneration.hpp
Print this page
rev 7474 : imported patch separateCardGeneration
rev 7477 : imported patch move_stuff_up
*** 29,38 ****
--- 29,39 ----
// and uses a card-size block-offset array to implement block_start.
#include "memory/generation.hpp"
class BlockOffsetSharedArray;
+ class CompactibleSpace;
class CardGeneration: public Generation {
friend class VMStructs;
protected:
// This is shared with other generations.
*** 52,81 ****
size_t _used_at_prologue;
CardGeneration(ReservedSpace rs, size_t initial_byte_size, int level,
GenRemSet* remset);
public:
// Attempt to expand the generation by "bytes". Expand by at a
// minimum "expand_bytes". Return true if some amount (not
// necessarily the full "bytes") was done.
virtual bool expand(size_t bytes, size_t expand_bytes);
// Shrink generation with specified size
! virtual void shrink(size_t bytes) = 0;
virtual void compute_new_size();
virtual void clear_remembered_set();
virtual void invalidate_remembered_set();
virtual void prepare_for_verify();
// Grow generation with specified size (returns false if unable to grow)
! virtual bool grow_by(size_t bytes) = 0;
// Grow generation to reserved size.
! virtual bool grow_to_reserved() = 0;
};
#endif // SHARE_VM_MEMORY_CARDGENERATION_HPP
--- 53,99 ----
size_t _used_at_prologue;
CardGeneration(ReservedSpace rs, size_t initial_byte_size, int level,
GenRemSet* remset);
+ virtual void assert_correct_size_change_locking() = 0;
+
+ virtual CompactibleSpace* space() const = 0;
+
public:
// Attempt to expand the generation by "bytes". Expand by at a
// minimum "expand_bytes". Return true if some amount (not
// necessarily the full "bytes") was done.
virtual bool expand(size_t bytes, size_t expand_bytes);
// Shrink generation with specified size
! virtual void shrink(size_t bytes);
virtual void compute_new_size();
virtual void clear_remembered_set();
virtual void invalidate_remembered_set();
virtual void prepare_for_verify();
// Grow generation with specified size (returns false if unable to grow)
! bool grow_by(size_t bytes);
// Grow generation to reserved size.
! bool grow_to_reserved();
!
! size_t capacity() const;
! size_t used() const;
! size_t free() const;
! MemRegion used_region() const;
!
! void space_iterate(SpaceClosure* blk, bool usedOnly = false);
!
! void younger_refs_iterate(OopsInGenClosure* blk);
!
! bool is_in(const void* p) const;
!
! CompactibleSpace* first_compaction_space() const;
};
#endif // SHARE_VM_MEMORY_CARDGENERATION_HPP
< prev index next >