Mercurial > hg > graal-jvmci-8
comparison src/share/vm/oops/constantPoolKlass.cpp @ 1706:9d7a8ab3736b
6962589: remove breadth first scanning code from parallel gc
Summary: Remove the breadth-first copying order from ParallelScavenge and use depth-first by default.
Reviewed-by: jcoomes, ysr, johnc
author | tonyp |
---|---|
date | Thu, 22 Jul 2010 10:27:41 -0400 |
parents | 083fde3b838e |
children | 7fcd5f39bd7a |
comparison
equal
deleted
inserted
replaced
1705:2d160770d2e5 | 1706:9d7a8ab3736b |
---|---|
266 PSParallelCompact::adjust_pointer(p, beg_addr, end_addr); | 266 PSParallelCompact::adjust_pointer(p, beg_addr, end_addr); |
267 | 267 |
268 return cp->object_size(); | 268 return cp->object_size(); |
269 } | 269 } |
270 | 270 |
271 void constantPoolKlass::oop_copy_contents(PSPromotionManager* pm, oop obj) { | |
272 assert(obj->is_constantPool(), "should be constant pool"); | |
273 constantPoolOop cp = (constantPoolOop) obj; | |
274 if (AnonymousClasses && cp->has_pseudo_string() && cp->tags() != NULL) { | |
275 oop* base = (oop*)cp->base(); | |
276 for (int i = 0; i < cp->length(); ++i, ++base) { | |
277 if (cp->tag_at(i).is_string()) { | |
278 if (PSScavenge::should_scavenge(base)) { | |
279 pm->claim_or_forward_breadth(base); | |
280 } | |
281 } | |
282 } | |
283 } | |
284 } | |
285 | |
286 void constantPoolKlass::oop_push_contents(PSPromotionManager* pm, oop obj) { | 271 void constantPoolKlass::oop_push_contents(PSPromotionManager* pm, oop obj) { |
287 assert(obj->is_constantPool(), "should be constant pool"); | 272 assert(obj->is_constantPool(), "should be constant pool"); |
288 constantPoolOop cp = (constantPoolOop) obj; | 273 constantPoolOop cp = (constantPoolOop) obj; |
289 if (AnonymousClasses && cp->has_pseudo_string() && cp->tags() != NULL) { | 274 if (AnonymousClasses && cp->has_pseudo_string() && cp->tags() != NULL) { |
290 oop* base = (oop*)cp->base(); | 275 oop* base = (oop*)cp->base(); |