< prev index next >
src/share/vm/gc_implementation/g1/g1EvacFailure.cpp
Print this page
rev 7799 : [mq]: fixG1EvacFailure
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2015, 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.
@@ -20,21 +20,19 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
-#ifndef SHARE_VM_GC_IMPLEMENTATION_G1_G1EVACFAILURE_HPP
-#define SHARE_VM_GC_IMPLEMENTATION_G1_G1EVACFAILURE_HPP
-
+#include "precompiled.hpp"
#include "gc_implementation/g1/concurrentMark.inline.hpp"
#include "gc_implementation/g1/dirtyCardQueue.hpp"
#include "gc_implementation/g1/g1CollectedHeap.inline.hpp"
+#include "gc_implementation/g1/g1EvacFailure.hpp"
#include "gc_implementation/g1/g1_globals.hpp"
#include "gc_implementation/g1/g1OopClosures.inline.hpp"
#include "gc_implementation/g1/heapRegion.hpp"
#include "gc_implementation/g1/heapRegionRemSet.hpp"
-#include "utilities/workgroup.hpp"
// Closures and tasks associated with any self-forwarding pointers
// installed as a result of an evacuation failure.
class UpdateRSetDeferred : public OopsInHeapRegionClosure {
@@ -230,24 +228,15 @@
}
return false;
}
};
-class G1ParRemoveSelfForwardPtrsTask: public AbstractGangTask {
-protected:
- G1CollectedHeap* _g1h;
- HeapRegionClaimer _hrclaimer;
-
-public:
- G1ParRemoveSelfForwardPtrsTask(G1CollectedHeap* g1h) :
+G1ParRemoveSelfForwardPtrsTask::G1ParRemoveSelfForwardPtrsTask(G1CollectedHeap* g1h) :
AbstractGangTask("G1 Remove Self-forwarding Pointers"), _g1h(g1h),
_hrclaimer(g1h->workers()->active_workers()) {}
- void work(uint worker_id) {
+void G1ParRemoveSelfForwardPtrsTask::work(uint worker_id) {
RemoveSelfForwardPtrHRClosure rsfp_cl(_g1h, worker_id, &_hrclaimer);
HeapRegion* hr = _g1h->start_cset_region_for_worker(worker_id);
_g1h->collection_set_iterate_from(hr, &rsfp_cl);
- }
-};
-
-#endif // SHARE_VM_GC_IMPLEMENTATION_G1_G1EVACFAILURE_HPP
+}
< prev index next >