< prev index next >
src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionSet.hpp
Print this page
rev 10690 : [backport] Cleanup header files and forward declarations
rev 10715 : [backport] Cleanup up superfluous newlines
rev 10740 : [backport] Protect more internal code from false sharing
rev 10772 : [backport] Update copyrights
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 2013, 2017, Red Hat, Inc. and/or its affiliates.
+ * Copyright (c) 2013, 2018, Red Hat, Inc. All rights reserved.
*
* 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.
*
@@ -23,21 +23,24 @@
#ifndef SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_HPP
#define SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_HPP
#include "memory/allocation.hpp"
+#include "gc_implementation/shenandoah/shenandoahHeap.hpp"
+#include "gc_implementation/shenandoah/shenandoahHeapRegion.hpp"
-class ShenandoahHeap;
-class ShenandoahHeapRegion;
class ShenandoahHeapRegionSet;
class ShenandoahHeapRegionSetIterator : public StackObj {
private:
const ShenandoahHeapRegionSet* _set;
- volatile jint _current_index;
ShenandoahHeap* const _heap;
+ char _pad0[DEFAULT_CACHE_LINE_SIZE];
+ volatile jint _current_index;
+ char _pad1[DEFAULT_CACHE_LINE_SIZE];
+
// No implicit copying: iterators should be passed by reference to capture the state
ShenandoahHeapRegionSetIterator(const ShenandoahHeapRegionSetIterator& that);
ShenandoahHeapRegionSetIterator& operator=(const ShenandoahHeapRegionSetIterator& o);
public:
@@ -63,11 +66,10 @@
// Bias set map's base address for fast test if an oop is in set
jbyte* const _biased_set_map;
size_t _region_count;
public:
-
ShenandoahHeapRegionSet();
~ShenandoahHeapRegionSet();
// Add region to set
void add_region(ShenandoahHeapRegion* r);
< prev index next >