1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp Thu Feb 16 13:12:25 2012 -0800 1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp Thu Feb 16 13:13:53 2012 -0800 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -64,6 +64,7 @@ 1.11 // Collection of generations that are adjacent in the 1.12 // space reserved for the heap. 1.13 AdjoiningGenerations* _gens; 1.14 + unsigned int _death_march_count; 1.15 1.16 static GCTaskManager* _gc_task_manager; // The task manager. 1.17 1.18 @@ -71,8 +72,13 @@ 1.19 static inline size_t total_invocations(); 1.20 HeapWord* allocate_new_tlab(size_t size); 1.21 1.22 + inline bool should_alloc_in_eden(size_t size) const; 1.23 + inline void death_march_check(HeapWord* const result, size_t size); 1.24 + HeapWord* mem_allocate_old_gen(size_t size); 1.25 + 1.26 public: 1.27 ParallelScavengeHeap() : CollectedHeap() { 1.28 + _death_march_count = 0; 1.29 set_alignment(_perm_gen_alignment, intra_heap_alignment()); 1.30 set_alignment(_young_gen_alignment, intra_heap_alignment()); 1.31 set_alignment(_old_gen_alignment, intra_heap_alignment());