comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp @ 993:54b3b351d6f9

Merge
author jrose
date Wed, 23 Sep 2009 23:56:15 -0700
parents 2c79770d1f6e
children 39b01ab7035a
comparison
equal deleted inserted replaced
992:6a8ccac44f41 993:54b3b351d6f9
165 165
166 // Other related classes. 166 // Other related classes.
167 friend class G1MarkSweep; 167 friend class G1MarkSweep;
168 168
169 private: 169 private:
170 enum SomePrivateConstants {
171 VeryLargeInBytes = HeapRegion::GrainBytes/2,
172 VeryLargeInWords = VeryLargeInBytes/HeapWordSize,
173 MinHeapDeltaBytes = 10 * HeapRegion::GrainBytes, // FIXME
174 NumAPIs = HeapRegion::MaxAge
175 };
176
177 // The one and only G1CollectedHeap, so static functions can find it. 170 // The one and only G1CollectedHeap, so static functions can find it.
178 static G1CollectedHeap* _g1h; 171 static G1CollectedHeap* _g1h;
172
173 static size_t _humongous_object_threshold_in_words;
179 174
180 // Storage for the G1 heap (excludes the permanent generation). 175 // Storage for the G1 heap (excludes the permanent generation).
181 VirtualSpace _g1_storage; 176 VirtualSpace _g1_storage;
182 MemRegion _g1_reserved; 177 MemRegion _g1_reserved;
183 178
857 // committed in the heap 852 // committed in the heap
858 MemRegion g1_committed() { 853 MemRegion g1_committed() {
859 return _g1_committed; 854 return _g1_committed;
860 } 855 }
861 856
862 NOT_PRODUCT( bool is_in_closed_subset(const void* p) const; ) 857 NOT_PRODUCT(bool is_in_closed_subset(const void* p) const;)
863 858
864 // Dirty card table entries covering a list of young regions. 859 // Dirty card table entries covering a list of young regions.
865 void dirtyCardsForYoungRegions(CardTableModRefBS* ct_bs, HeapRegion* list); 860 void dirtyCardsForYoungRegions(CardTableModRefBS* ct_bs, HeapRegion* list);
866 861
867 // This resets the card table to all zeros. It is used after 862 // This resets the card table to all zeros. It is used after
1019 // words. 1014 // words.
1020 virtual size_t large_typearray_limit(); 1015 virtual size_t large_typearray_limit();
1021 1016
1022 // Returns "true" iff the given word_size is "very large". 1017 // Returns "true" iff the given word_size is "very large".
1023 static bool isHumongous(size_t word_size) { 1018 static bool isHumongous(size_t word_size) {
1024 return word_size >= VeryLargeInWords; 1019 return word_size >= _humongous_object_threshold_in_words;
1025 } 1020 }
1026 1021
1027 // Update mod union table with the set of dirty cards. 1022 // Update mod union table with the set of dirty cards.
1028 void updateModUnion(); 1023 void updateModUnion();
1029 1024