src/share/vm/gc_implementation/g1/vm_operations_g1.cpp

changeset 8194
047a642c9729
parent 7687
af8f16ac392c
child 8604
04d83ba48607
equal deleted inserted replaced
8193:70649f10b88c 8194:047a642c9729
88 return res; 88 return res;
89 } 89 }
90 90
91 void VM_G1IncCollectionPause::doit() { 91 void VM_G1IncCollectionPause::doit() {
92 G1CollectedHeap* g1h = G1CollectedHeap::heap(); 92 G1CollectedHeap* g1h = G1CollectedHeap::heap();
93 assert(!_should_initiate_conc_mark || 93 assert(!_should_initiate_conc_mark || g1h->should_do_concurrent_full_gc(_gc_cause),
94 ((_gc_cause == GCCause::_gc_locker && GCLockerInvokesConcurrent) || 94 "only a GC locker, a System.gc(), stats update, whitebox, or a hum allocation induced GC should start a cycle");
95 (_gc_cause == GCCause::_java_lang_system_gc && ExplicitGCInvokesConcurrent) ||
96 _gc_cause == GCCause::_g1_humongous_allocation ||
97 _gc_cause == GCCause::_update_allocation_context_stats_inc),
98 "only a GC locker, a System.gc(), stats update or a hum allocation induced GC should start a cycle");
99 95
100 if (_word_size > 0) { 96 if (_word_size > 0) {
101 // An allocation has been requested. So, try to do that first. 97 // An allocation has been requested. So, try to do that first.
102 _result = g1h->attempt_allocation_at_safepoint(_word_size, allocation_context(), 98 _result = g1h->attempt_allocation_at_safepoint(_word_size, allocation_context(),
103 false /* expect_null_cur_alloc_region */); 99 false /* expect_null_cur_alloc_region */);

mercurial