comparison src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp @ 374:a4b729f5b611

6716466: par compact - remove VerifyParallelOldWithMarkSweep code Reviewed-by: jmasa
author jcoomes
date Tue, 30 Sep 2008 11:49:31 -0700
parents 850fdf70db2b
children 122d10c82f3f
comparison
equal deleted inserted replaced
373:06df86c2ec37 374:a4b729f5b611
150 // store the forwarding pointer into the mark word 150 // store the forwarding pointer into the mark word
151 if (q != compact_top) { 151 if (q != compact_top) {
152 oop(q)->forward_to(oop(compact_top)); 152 oop(q)->forward_to(oop(compact_top));
153 assert(oop(q)->is_gc_marked(), "encoding the pointer should preserve the mark"); 153 assert(oop(q)->is_gc_marked(), "encoding the pointer should preserve the mark");
154 } else { 154 } else {
155 // Don't clear the mark since it's confuses parallel old 155 // if the object isn't moving we can just set the mark to the default
156 // verification. 156 // mark and handle it specially later on.
157 if (!UseParallelOldGC || !VerifyParallelOldWithMarkSweep) { 157 oop(q)->init_mark();
158 // if the object isn't moving we can just set the mark to the default
159 // mark and handle it specially later on.
160 oop(q)->init_mark();
161 }
162 assert(oop(q)->forwardee() == NULL, "should be forwarded to NULL"); 158 assert(oop(q)->forwardee() == NULL, "should be forwarded to NULL");
163 } 159 }
164 160
165 // Update object start array 161 // Update object start array
166 if (!UseParallelOldGC || !VerifyParallelOldWithMarkSweep) { 162 if (start_array) {
167 if (start_array) 163 start_array->allocate_block(compact_top);
168 start_array->allocate_block(compact_top);
169 } 164 }
170 165
171 VALIDATE_MARK_SWEEP_ONLY(MarkSweep::register_live_oop(oop(q), size)); 166 VALIDATE_MARK_SWEEP_ONLY(MarkSweep::register_live_oop(oop(q), size));
172 compact_top += size; 167 compact_top += size;
173 assert(compact_top <= dest->space()->end(), 168 assert(compact_top <= dest->space()->end(),
217 if (q != compact_top) { 212 if (q != compact_top) {
218 oop(q)->forward_to(oop(compact_top)); 213 oop(q)->forward_to(oop(compact_top));
219 assert(oop(q)->is_gc_marked(), "encoding the pointer should preserve the mark"); 214 assert(oop(q)->is_gc_marked(), "encoding the pointer should preserve the mark");
220 } else { 215 } else {
221 // if the object isn't moving we can just set the mark to the default 216 // if the object isn't moving we can just set the mark to the default
222 // Don't clear the mark since it's confuses parallel old 217 // mark and handle it specially later on.
223 // verification. 218 oop(q)->init_mark();
224 if (!UseParallelOldGC || !VerifyParallelOldWithMarkSweep) {
225 // mark and handle it specially later on.
226 oop(q)->init_mark();
227 }
228 assert(oop(q)->forwardee() == NULL, "should be forwarded to NULL"); 219 assert(oop(q)->forwardee() == NULL, "should be forwarded to NULL");
229 } 220 }
230 221
231 if (!UseParallelOldGC || !VerifyParallelOldWithMarkSweep) { 222 // Update object start array
232 // Update object start array 223 if (start_array) {
233 if (start_array) 224 start_array->allocate_block(compact_top);
234 start_array->allocate_block(compact_top);
235 } 225 }
236 226
237 VALIDATE_MARK_SWEEP_ONLY(MarkSweep::register_live_oop(oop(q), sz)); 227 VALIDATE_MARK_SWEEP_ONLY(MarkSweep::register_live_oop(oop(q), sz));
238 compact_top += sz; 228 compact_top += sz;
239 assert(compact_top <= dest->space()->end(), 229 assert(compact_top <= dest->space()->end(),