1 /* |
1 /* |
2 * Copyright (c) 2001, 2009, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
247 void reportIndexedFreeListStatistics() const; |
249 void reportIndexedFreeListStatistics() const; |
248 size_t maxChunkSizeInIndexedFreeLists() const; |
250 size_t maxChunkSizeInIndexedFreeLists() const; |
249 size_t numFreeBlocksInIndexedFreeLists() const; |
251 size_t numFreeBlocksInIndexedFreeLists() const; |
250 // Accessor |
252 // Accessor |
251 HeapWord* unallocated_block() const { |
253 HeapWord* unallocated_block() const { |
252 HeapWord* ub = _bt.unallocated_block(); |
254 if (BlockOffsetArrayUseUnallocatedBlock) { |
253 assert(ub >= bottom() && |
255 HeapWord* ub = _bt.unallocated_block(); |
254 ub <= end(), "space invariant"); |
256 assert(ub >= bottom() && |
255 return ub; |
257 ub <= end(), "space invariant"); |
|
258 return ub; |
|
259 } else { |
|
260 return end(); |
|
261 } |
256 } |
262 } |
257 void freed(HeapWord* start, size_t size) { |
263 void freed(HeapWord* start, size_t size) { |
258 _bt.freed(start, size); |
264 _bt.freed(start, size); |
259 } |
265 } |
260 |
266 |
474 // space has been done. |
480 // space has been done. |
475 virtual void reset_after_compaction(); |
481 virtual void reset_after_compaction(); |
476 |
482 |
477 // Debugging support |
483 // Debugging support |
478 void print() const; |
484 void print() const; |
|
485 void print_on(outputStream* st) const; |
479 void prepare_for_verify(); |
486 void prepare_for_verify(); |
480 void verify(bool allow_dirty) const; |
487 void verify(bool allow_dirty) const; |
481 void verifyFreeLists() const PRODUCT_RETURN; |
488 void verifyFreeLists() const PRODUCT_RETURN; |
482 void verifyIndexedFreeLists() const; |
489 void verifyIndexedFreeLists() const; |
483 void verifyIndexedFreeList(size_t size) const; |
490 void verifyIndexedFreeList(size_t size) const; |