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);