index

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

Print this page
rev 7474 : imported patch cleanup

*** 1,7 **** /* ! * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 32,43 **** #include "gc_implementation/shared/gcTraceTime.hpp" #include "gc_implementation/shared/isGCActiveMark.hpp" #include "gc_implementation/g1/vm_operations_g1.hpp" #include "runtime/interfaceSupport.hpp" ! VM_G1CollectForAllocation::VM_G1CollectForAllocation( ! unsigned int gc_count_before, size_t word_size) : VM_G1OperationWithAllocRequest(gc_count_before, word_size, GCCause::_allocation_failure) { guarantee(word_size > 0, "an allocation should always be requested"); } --- 32,42 ---- #include "gc_implementation/shared/gcTraceTime.hpp" #include "gc_implementation/shared/isGCActiveMark.hpp" #include "gc_implementation/g1/vm_operations_g1.hpp" #include "runtime/interfaceSupport.hpp" ! VM_G1CollectForAllocation::VM_G1CollectForAllocation(uint gc_count_before, size_t word_size) : VM_G1OperationWithAllocRequest(gc_count_before, word_size, GCCause::_allocation_failure) { guarantee(word_size > 0, "an allocation should always be requested"); }
*** 55,66 **** G1CollectedHeap* g1h = G1CollectedHeap::heap(); GCCauseSetter x(g1h, _gc_cause); g1h->do_full_collection(false /* clear_all_soft_refs */); } ! VM_G1IncCollectionPause::VM_G1IncCollectionPause( ! unsigned int gc_count_before, size_t word_size, bool should_initiate_conc_mark, double target_pause_time_ms, GCCause::Cause gc_cause) : VM_G1OperationWithAllocRequest(gc_count_before, word_size, gc_cause), --- 54,64 ---- G1CollectedHeap* g1h = G1CollectedHeap::heap(); GCCauseSetter x(g1h, _gc_cause); g1h->do_full_collection(false /* clear_all_soft_refs */); } ! VM_G1IncCollectionPause::VM_G1IncCollectionPause(uint gc_count_before, size_t word_size, bool should_initiate_conc_mark, double target_pause_time_ms, GCCause::Cause gc_cause) : VM_G1OperationWithAllocRequest(gc_count_before, word_size, gc_cause),
*** 73,83 **** target_pause_time_ms)); _gc_cause = gc_cause; } bool VM_G1IncCollectionPause::doit_prologue() { ! bool res = VM_GC_Operation::doit_prologue(); if (!res) { if (_should_initiate_conc_mark) { // The prologue can fail for a couple of reasons. The first is that another GC // got scheduled and prevented the scheduling of the initial mark GC. The // second is that the GC locker may be active and the heap can't be expanded. --- 71,81 ---- target_pause_time_ms)); _gc_cause = gc_cause; } bool VM_G1IncCollectionPause::doit_prologue() { ! bool res = VM_G1OperationWithAllocRequest::doit_prologue(); if (!res) { if (_should_initiate_conc_mark) { // The prologue can fail for a couple of reasons. The first is that another GC // got scheduled and prevented the scheduling of the initial mark GC. The // second is that the GC locker may be active and the heap can't be expanded.
*** 163,173 **** } } } void VM_G1IncCollectionPause::doit_epilogue() { ! VM_GC_Operation::doit_epilogue(); // If the pause was initiated by a System.gc() and // +ExplicitGCInvokesConcurrent, we have to wait here for the cycle // that just started (or maybe one that was already in progress) to // finish. --- 161,171 ---- } } } void VM_G1IncCollectionPause::doit_epilogue() { ! VM_G1OperationWithAllocRequest::doit_epilogue(); // If the pause was initiated by a System.gc() and // +ExplicitGCInvokesConcurrent, we have to wait here for the cycle // that just started (or maybe one that was already in progress) to // finish.
index