src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp
src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp
Print this page
*** 23,46 ****
*/
#ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARALLELSCAVENGEHEAP_HPP
#define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARALLELSCAVENGEHEAP_HPP
#include "gc_implementation/parallelScavenge/objectStartArray.hpp"
#include "gc_implementation/parallelScavenge/psGCAdaptivePolicyCounters.hpp"
#include "gc_implementation/parallelScavenge/psOldGen.hpp"
#include "gc_implementation/parallelScavenge/psYoungGen.hpp"
#include "gc_implementation/shared/gcPolicyCounters.hpp"
#include "gc_implementation/shared/gcWhen.hpp"
#include "gc_interface/collectedHeap.inline.hpp"
#include "utilities/ostream.hpp"
class AdjoiningGenerations;
class GCHeapSummary;
class GCTaskManager;
- class GenerationSizer;
- class CollectorPolicy;
class PSAdaptiveSizePolicy;
class PSHeapSummary;
class ParallelScavengeHeap : public CollectedHeap {
friend class VMStructs;
--- 23,46 ----
*/
#ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARALLELSCAVENGEHEAP_HPP
#define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARALLELSCAVENGEHEAP_HPP
+ #include "gc_implementation/parallelScavenge/generationSizer.hpp"
#include "gc_implementation/parallelScavenge/objectStartArray.hpp"
#include "gc_implementation/parallelScavenge/psGCAdaptivePolicyCounters.hpp"
#include "gc_implementation/parallelScavenge/psOldGen.hpp"
#include "gc_implementation/parallelScavenge/psYoungGen.hpp"
#include "gc_implementation/shared/gcPolicyCounters.hpp"
#include "gc_implementation/shared/gcWhen.hpp"
#include "gc_interface/collectedHeap.inline.hpp"
+ #include "memory/collectorPolicy.hpp"
#include "utilities/ostream.hpp"
class AdjoiningGenerations;
class GCHeapSummary;
class GCTaskManager;
class PSAdaptiveSizePolicy;
class PSHeapSummary;
class ParallelScavengeHeap : public CollectedHeap {
friend class VMStructs;
*** 52,68 ****
static PSAdaptiveSizePolicy* _size_policy;
static PSGCAdaptivePolicyCounters* _gc_policy_counters;
static ParallelScavengeHeap* _psh;
- size_t _young_gen_alignment;
- size_t _old_gen_alignment;
-
GenerationSizer* _collector_policy;
- inline size_t set_alignment(size_t& var, size_t val);
-
// Collection of generations that are adjacent in the
// space reserved for the heap.
AdjoiningGenerations* _gens;
unsigned int _death_march_count;
--- 52,63 ----
*** 78,96 ****
inline bool should_alloc_in_eden(size_t size) const;
inline void death_march_check(HeapWord* const result, size_t size);
HeapWord* mem_allocate_old_gen(size_t size);
public:
! ParallelScavengeHeap() : CollectedHeap(), _death_march_count(0) {
! set_alignment(_young_gen_alignment, intra_heap_alignment());
! set_alignment(_old_gen_alignment, intra_heap_alignment());
! }
!
! // Return the (conservative) maximum heap alignment
! static size_t conservative_max_heap_alignment() {
! return GenCollectorPolicy::intra_heap_alignment();
! }
// For use by VM operations
enum CollectionType {
Scavenge,
MarkSweep
--- 73,83 ----
inline bool should_alloc_in_eden(size_t size) const;
inline void death_march_check(HeapWord* const result, size_t size);
HeapWord* mem_allocate_old_gen(size_t size);
public:
! ParallelScavengeHeap() : CollectedHeap(), _death_march_count(0) { }
// For use by VM operations
enum CollectionType {
Scavenge,
MarkSweep
*** 118,134 ****
// Returns JNI_OK on success
virtual jint initialize();
void post_initialize();
void update_counters();
! // The alignment used for the various generations.
! size_t young_gen_alignment() const { return _young_gen_alignment; }
! size_t old_gen_alignment() const { return _old_gen_alignment; }
!
! // The alignment used for eden and survivors within the young gen
! // and for boundary between young gen and old gen.
! size_t intra_heap_alignment() { return GenCollectorPolicy::intra_heap_alignment(); }
size_t capacity() const;
size_t used() const;
// Return "true" if all generations have reached the
--- 105,123 ----
// Returns JNI_OK on success
virtual jint initialize();
void post_initialize();
void update_counters();
!
! // The alignment used for the various areas
! size_t space_alignment() { return _collector_policy->space_alignment(); }
! size_t generation_alignment() { return _collector_policy->gen_alignment(); }
!
! // Return the (conservative) maximum heap alignment
! static size_t conservative_max_heap_alignment() {
! return CollectorPolicy::compute_heap_alignment();
! }
size_t capacity() const;
size_t used() const;
// Return "true" if all generations have reached the
*** 259,271 ****
ParStrongRootsScope();
~ParStrongRootsScope();
};
};
- inline size_t ParallelScavengeHeap::set_alignment(size_t& var, size_t val)
- {
- assert(is_power_of_2((intptr_t)val), "must be a power of 2");
- var = round_to(val, intra_heap_alignment());
- return var;
- }
-
#endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARALLELSCAVENGEHEAP_HPP
--- 248,253 ----
src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File