Mercurial > hg > truffle
comparison src/share/vm/memory/collectorPolicy.cpp @ 8743:82657b6a8cc0
6976528: PS: assert(!limit_exceeded || softrefs_clear) failed: Should have been cleared
Reviewed-by: johnc
author | jmasa |
---|---|
date | Tue, 12 Mar 2013 11:00:49 -0700 |
parents | fd7b3770c77e |
children | 2e093b564241 |
comparison
equal
deleted
inserted
replaced
8742:993d878108d9 | 8743:82657b6a8cc0 |
---|---|
618 // will be thrown. Clear gc_overhead_limit_exceeded | 618 // will be thrown. Clear gc_overhead_limit_exceeded |
619 // so that the overhead exceeded does not persist. | 619 // so that the overhead exceeded does not persist. |
620 | 620 |
621 const bool limit_exceeded = size_policy()->gc_overhead_limit_exceeded(); | 621 const bool limit_exceeded = size_policy()->gc_overhead_limit_exceeded(); |
622 const bool softrefs_clear = all_soft_refs_clear(); | 622 const bool softrefs_clear = all_soft_refs_clear(); |
623 assert(!limit_exceeded || softrefs_clear, "Should have been cleared"); | 623 |
624 if (limit_exceeded && softrefs_clear) { | 624 if (limit_exceeded && softrefs_clear) { |
625 *gc_overhead_limit_was_exceeded = true; | 625 *gc_overhead_limit_was_exceeded = true; |
626 size_policy()->set_gc_overhead_limit_exceeded(false); | 626 size_policy()->set_gc_overhead_limit_exceeded(false); |
627 if (op.result() != NULL) { | 627 if (op.result() != NULL) { |
628 CollectedHeap::fill_with_object(op.result(), size); | 628 CollectedHeap::fill_with_object(op.result(), size); |