1036 for (int i = 0; i < _n_gens; i++) { 1037 _gens[i]->space_iterate(cl, true); 1038 } 1039 } 1040 1041 bool GenCollectedHeap::is_maximal_no_gc() const { 1042 for (int i = 0; i < _n_gens; i++) { 1043 if (!_gens[i]->is_maximal_no_gc()) { 1044 return false; 1045 } 1046 } 1047 return true; 1048 } 1049 1050 void GenCollectedHeap::save_marks() { 1051 for (int i = 0; i < _n_gens; i++) { 1052 _gens[i]->save_marks(); 1053 } 1054 } 1055 1056 /* Not used at the moment 1057 void GenCollectedHeap::compute_new_generation_sizes(int collectedGen) { 1058 for (int i = 0; i <= collectedGen; i++) { 1059 _gens[i]->compute_new_size(); 1060 } 1061 } 1062 */ 1063 1064 GenCollectedHeap* GenCollectedHeap::heap() { 1065 assert(_gch != NULL, "Uninitialized access to GenCollectedHeap::heap()"); 1066 assert(_gch->kind() == CollectedHeap::GenCollectedHeap, "not a generational heap"); 1067 return _gch; 1068 } 1069 1070 1071 void GenCollectedHeap::prepare_for_compaction() { 1072 guarantee(_n_gens = 2, "Wrong number of generations"); 1073 Generation* old_gen = _gens[1]; 1074 // Start by compacting into same gen. 1075 CompactPoint cp(old_gen, NULL, NULL); 1076 old_gen->prepare_for_compaction(&cp); 1077 Generation* young_gen = _gens[0]; 1078 young_gen->prepare_for_compaction(&cp); 1079 } 1080 1081 GCStats* GenCollectedHeap::gc_stats(int level) const { 1082 return _gens[level]->gc_stats(); 1083 } | 1036 for (int i = 0; i < _n_gens; i++) { 1037 _gens[i]->space_iterate(cl, true); 1038 } 1039 } 1040 1041 bool GenCollectedHeap::is_maximal_no_gc() const { 1042 for (int i = 0; i < _n_gens; i++) { 1043 if (!_gens[i]->is_maximal_no_gc()) { 1044 return false; 1045 } 1046 } 1047 return true; 1048 } 1049 1050 void GenCollectedHeap::save_marks() { 1051 for (int i = 0; i < _n_gens; i++) { 1052 _gens[i]->save_marks(); 1053 } 1054 } 1055 1056 GenCollectedHeap* GenCollectedHeap::heap() { 1057 assert(_gch != NULL, "Uninitialized access to GenCollectedHeap::heap()"); 1058 assert(_gch->kind() == CollectedHeap::GenCollectedHeap, "not a generational heap"); 1059 return _gch; 1060 } 1061 1062 1063 void GenCollectedHeap::prepare_for_compaction() { 1064 guarantee(_n_gens = 2, "Wrong number of generations"); 1065 Generation* old_gen = _gens[1]; 1066 // Start by compacting into same gen. 1067 CompactPoint cp(old_gen, NULL, NULL); 1068 old_gen->prepare_for_compaction(&cp); 1069 Generation* young_gen = _gens[0]; 1070 young_gen->prepare_for_compaction(&cp); 1071 } 1072 1073 GCStats* GenCollectedHeap::gc_stats(int level) const { 1074 return _gens[level]->gc_stats(); 1075 } |