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 void GenCollectedHeap::compute_new_generation_sizes(int collectedGen) { 1057 for (int i = 0; i <= collectedGen; i++) { 1058 _gens[i]->compute_new_size(); 1059 } 1060 } 1061 1062 GenCollectedHeap* GenCollectedHeap::heap() { 1063 assert(_gch != NULL, "Uninitialized access to GenCollectedHeap::heap()"); 1064 assert(_gch->kind() == CollectedHeap::GenCollectedHeap, "not a generational heap"); 1065 return _gch; 1066 } 1067 1068 1069 void GenCollectedHeap::prepare_for_compaction() { 1070 guarantee(_n_gens = 2, "Wrong number of generations"); 1071 Generation* old_gen = _gens[1]; 1072 // Start by compacting into same gen. 1073 CompactPoint cp(old_gen, NULL, NULL); 1074 old_gen->prepare_for_compaction(&cp); 1075 Generation* young_gen = _gens[0]; 1076 young_gen->prepare_for_compaction(&cp); 1077 } 1078 1079 GCStats* GenCollectedHeap::gc_stats(int level) const { 1080 return _gens[level]->gc_stats(); 1081 } | 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 } |