Mercurial > hg > graal-compiler
comparison src/share/vm/memory/generation.cpp @ 517:e9be0e04635a
6689653: JMapPerm fails with UseConcMarkSweepIncGC and compressed oops off
Summary: Added safe_object_iterate() for use by JMapPerm.
Reviewed-by: tonyp
author | jmasa |
---|---|
date | Tue, 06 Jan 2009 07:05:05 -0800 |
parents | 818a18cd69a8 |
children | 0fbdb4381b99 |
comparison
equal
deleted
inserted
replaced
500:ca7d48236048 | 517:e9be0e04635a |
---|---|
314 GenerationObjIterateClosure(ObjectClosure* cl) : _cl(cl) {} | 314 GenerationObjIterateClosure(ObjectClosure* cl) : _cl(cl) {} |
315 }; | 315 }; |
316 | 316 |
317 void Generation::object_iterate(ObjectClosure* cl) { | 317 void Generation::object_iterate(ObjectClosure* cl) { |
318 GenerationObjIterateClosure blk(cl); | 318 GenerationObjIterateClosure blk(cl); |
319 space_iterate(&blk); | |
320 } | |
321 | |
322 class GenerationSafeObjIterateClosure : public SpaceClosure { | |
323 private: | |
324 ObjectClosure* _cl; | |
325 public: | |
326 virtual void do_space(Space* s) { | |
327 s->safe_object_iterate(_cl); | |
328 } | |
329 GenerationSafeObjIterateClosure(ObjectClosure* cl) : _cl(cl) {} | |
330 }; | |
331 | |
332 void Generation::safe_object_iterate(ObjectClosure* cl) { | |
333 GenerationSafeObjIterateClosure blk(cl); | |
319 space_iterate(&blk); | 334 space_iterate(&blk); |
320 } | 335 } |
321 | 336 |
322 void Generation::prepare_for_compaction(CompactPoint* cp) { | 337 void Generation::prepare_for_compaction(CompactPoint* cp) { |
323 // Generic implementation, can be specialized | 338 // Generic implementation, can be specialized |