--- a/src/hotspot/share/gc/cms/parNewGeneration.hpp Mon Sep 18 15:06:28 2017 +0200
+++ b/src/hotspot/share/gc/cms/parNewGeneration.hpp Thu Oct 12 15:08:19 2017 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2017, 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
@@ -35,6 +35,7 @@
#include "memory/padded.hpp"
class ChunkArray;
+class CMSHeap;
class ParScanWithoutBarrierClosure;
class ParScanWithBarrierClosure;
class ParRootScanWithoutBarrierClosure;
@@ -259,11 +260,11 @@
class EvacuateFollowersClosureGeneral: public VoidClosure {
private:
- GenCollectedHeap* _gch;
+ CMSHeap* _heap;
OopsInGenClosure* _scan_cur_or_nonheap;
OopsInGenClosure* _scan_older;
public:
- EvacuateFollowersClosureGeneral(GenCollectedHeap* gch,
+ EvacuateFollowersClosureGeneral(CMSHeap* heap,
OopsInGenClosure* cur,
OopsInGenClosure* older);
virtual void do_void();
@@ -336,7 +337,7 @@
static oop real_forwardee_slow(oop obj);
static void waste_some_time();
- void handle_promotion_failed(GenCollectedHeap* gch, ParScanThreadStateSet& thread_state_set);
+ void handle_promotion_failed(CMSHeap* gch, ParScanThreadStateSet& thread_state_set);
protected:
@@ -345,6 +346,8 @@
bool survivor_overflow() { return _survivor_overflow; }
void set_survivor_overflow(bool v) { _survivor_overflow = v; }
+ void restore_preserved_marks();
+
public:
ParNewGeneration(ReservedSpace rs, size_t initial_byte_size);