src/share/vm/gc_implementation/shared/markSweep.cpp

changeset 5011
a08c80e9e1e5
parent 4384
b735136e0d82
child 5097
92ef81e2f571
child 5119
12f651e29f6b
equal deleted inserted replaced
5010:d391427ddc29 5011:a08c80e9e1e5
79 void MarkSweep::follow_class_loader(ClassLoaderData* cld) { 79 void MarkSweep::follow_class_loader(ClassLoaderData* cld) {
80 cld->oops_do(&MarkSweep::mark_and_push_closure, &MarkSweep::follow_klass_closure, true); 80 cld->oops_do(&MarkSweep::mark_and_push_closure, &MarkSweep::follow_klass_closure, true);
81 } 81 }
82 82
83 void MarkSweep::adjust_class_loader(ClassLoaderData* cld) { 83 void MarkSweep::adjust_class_loader(ClassLoaderData* cld) {
84 cld->oops_do(&MarkSweep::adjust_root_pointer_closure, &MarkSweep::adjust_klass_closure, true); 84 cld->oops_do(&MarkSweep::adjust_pointer_closure, &MarkSweep::adjust_klass_closure, true);
85 } 85 }
86 86
87 87
88 void MarkSweep::follow_stack() { 88 void MarkSweep::follow_stack() {
89 do { 89 do {
119 _preserved_mark_stack.push(mark); 119 _preserved_mark_stack.push(mark);
120 _preserved_oop_stack.push(obj); 120 _preserved_oop_stack.push(obj);
121 } 121 }
122 } 122 }
123 123
124 MarkSweep::AdjustPointerClosure MarkSweep::adjust_root_pointer_closure(true); 124 MarkSweep::AdjustPointerClosure MarkSweep::adjust_pointer_closure;
125 MarkSweep::AdjustPointerClosure MarkSweep::adjust_pointer_closure(false);
126 125
127 void MarkSweep::AdjustPointerClosure::do_oop(oop* p) { adjust_pointer(p, _is_root); } 126 void MarkSweep::AdjustPointerClosure::do_oop(oop* p) { adjust_pointer(p); }
128 void MarkSweep::AdjustPointerClosure::do_oop(narrowOop* p) { adjust_pointer(p, _is_root); } 127 void MarkSweep::AdjustPointerClosure::do_oop(narrowOop* p) { adjust_pointer(p); }
129 128
130 void MarkSweep::adjust_marks() { 129 void MarkSweep::adjust_marks() {
131 assert( _preserved_oop_stack.size() == _preserved_mark_stack.size(), 130 assert( _preserved_oop_stack.size() == _preserved_mark_stack.size(),
132 "inconsistent preserved oop stacks"); 131 "inconsistent preserved oop stacks");
133 132

mercurial