106 return _virtual_space->contains((void *)p); 107 } 108 109 bool is_in_reserved(const void* p) const { 110 return reserved().contains((void *)p); 111 } 112 113 MutableSpace* eden_space() const { return _eden_space; } 114 MutableSpace* from_space() const { return _from_space; } 115 MutableSpace* to_space() const { return _to_space; } 116 PSVirtualSpace* virtual_space() const { return _virtual_space; } 117 118 // For Adaptive size policy 119 size_t min_gen_size() { return _min_gen_size; } 120 121 // MarkSweep support 122 PSMarkSweepDecorator* eden_mark_sweep() const { return _eden_mark_sweep; } 123 PSMarkSweepDecorator* from_mark_sweep() const { return _from_mark_sweep; } 124 PSMarkSweepDecorator* to_mark_sweep() const { return _to_mark_sweep; } 125 126 void precompact(); 127 void adjust_pointers(); 128 void compact(); 129 130 // Called during/after GC 131 void swap_spaces(); 132 133 // Resize generation using suggested free space size and survivor size 134 // NOTE: "eden_size" and "survivor_size" are suggestions only. Current 135 // heap layout (particularly, live objects in from space) might 136 // not allow us to use these values. 137 void resize(size_t eden_size, size_t survivor_size); 138 139 // Size info 140 size_t capacity_in_bytes() const; 141 size_t used_in_bytes() const; 142 size_t free_in_bytes() const; 143 144 size_t capacity_in_words() const; 145 size_t used_in_words() const; 146 size_t free_in_words() const; 147 148 // The max this generation can grow to | 106 return _virtual_space->contains((void *)p); 107 } 108 109 bool is_in_reserved(const void* p) const { 110 return reserved().contains((void *)p); 111 } 112 113 MutableSpace* eden_space() const { return _eden_space; } 114 MutableSpace* from_space() const { return _from_space; } 115 MutableSpace* to_space() const { return _to_space; } 116 PSVirtualSpace* virtual_space() const { return _virtual_space; } 117 118 // For Adaptive size policy 119 size_t min_gen_size() { return _min_gen_size; } 120 121 // MarkSweep support 122 PSMarkSweepDecorator* eden_mark_sweep() const { return _eden_mark_sweep; } 123 PSMarkSweepDecorator* from_mark_sweep() const { return _from_mark_sweep; } 124 PSMarkSweepDecorator* to_mark_sweep() const { return _to_mark_sweep; } 125 126 #if INCLUDE_SERIALGC 127 void precompact(); 128 void adjust_pointers(); 129 void compact(); 130 #endif 131 132 // Called during/after GC 133 void swap_spaces(); 134 135 // Resize generation using suggested free space size and survivor size 136 // NOTE: "eden_size" and "survivor_size" are suggestions only. Current 137 // heap layout (particularly, live objects in from space) might 138 // not allow us to use these values. 139 void resize(size_t eden_size, size_t survivor_size); 140 141 // Size info 142 size_t capacity_in_bytes() const; 143 size_t used_in_bytes() const; 144 size_t free_in_bytes() const; 145 146 size_t capacity_in_words() const; 147 size_t used_in_words() const; 148 size_t free_in_words() const; 149 150 // The max this generation can grow to |