17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "gc/g1/g1CollectedHeap.hpp"
27 #include "gc/g1/g1ConcurrentMarkBitMap.inline.hpp"
28 #include "gc/g1/g1FullCollector.hpp"
29 #include "gc/g1/g1FullGCAdjustTask.hpp"
30 #include "gc/g1/g1FullGCCompactionPoint.hpp"
31 #include "gc/g1/g1FullGCMarker.hpp"
32 #include "gc/g1/g1FullGCOopClosures.inline.hpp"
33 #include "gc/g1/heapRegion.inline.hpp"
34 #include "gc/shared/gcTraceTime.inline.hpp"
35 #include "gc/shared/referenceProcessor.hpp"
36 #include "logging/log.hpp"
37
38 class G1AdjustLiveClosure : public StackObj {
39 G1AdjustClosure* _adjust_closure;
40 public:
41 G1AdjustLiveClosure(G1AdjustClosure* cl) :
42 _adjust_closure(cl) { }
43
44 size_t apply(oop object) {
45 return object->oop_iterate_size(_adjust_closure);
46 }
47 };
48
49 class G1AdjustRegionClosure : public HeapRegionClosure {
50 G1CMBitMap* _bitmap;
51 uint _worker_id;
52 public:
53 G1AdjustRegionClosure(G1CMBitMap* bitmap, uint worker_id) :
54 _bitmap(bitmap),
55 _worker_id(worker_id) { }
56
|
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "gc/g1/g1CollectedHeap.hpp"
27 #include "gc/g1/g1ConcurrentMarkBitMap.inline.hpp"
28 #include "gc/g1/g1FullCollector.hpp"
29 #include "gc/g1/g1FullGCAdjustTask.hpp"
30 #include "gc/g1/g1FullGCCompactionPoint.hpp"
31 #include "gc/g1/g1FullGCMarker.hpp"
32 #include "gc/g1/g1FullGCOopClosures.inline.hpp"
33 #include "gc/g1/heapRegion.inline.hpp"
34 #include "gc/shared/gcTraceTime.inline.hpp"
35 #include "gc/shared/referenceProcessor.hpp"
36 #include "logging/log.hpp"
37 #include "memory/iterator.inline.hpp"
38
39 class G1AdjustLiveClosure : public StackObj {
40 G1AdjustClosure* _adjust_closure;
41 public:
42 G1AdjustLiveClosure(G1AdjustClosure* cl) :
43 _adjust_closure(cl) { }
44
45 size_t apply(oop object) {
46 return object->oop_iterate_size(_adjust_closure);
47 }
48 };
49
50 class G1AdjustRegionClosure : public HeapRegionClosure {
51 G1CMBitMap* _bitmap;
52 uint _worker_id;
53 public:
54 G1AdjustRegionClosure(G1CMBitMap* bitmap, uint worker_id) :
55 _bitmap(bitmap),
56 _worker_id(worker_id) { }
57
|