src/share/vm/memory/metachunk.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Cdiff src/share/vm/memory/metachunk.cpp

src/share/vm/memory/metachunk.cpp

Print this page

        

*** 28,39 **** #include "utilities/copy.hpp" #include "utilities/debug.hpp" class VirtualSpaceNode; - const size_t metadata_chunk_initialize = 0xf7f7f7f7; - size_t Metachunk::object_alignment() { // Must align pointers and sizes to 8, // so that 64 bit types get correctly aligned. const size_t alignment = 8; --- 28,37 ----
*** 56,71 **** _container(container) { _top = initial_top(); #ifdef ASSERT set_is_tagged_free(false); ! size_t data_word_size = pointer_delta(end(), ! _top, ! sizeof(MetaWord)); ! Copy::fill_to_words((HeapWord*)_top, ! data_word_size, ! metadata_chunk_initialize); #endif } MetaWord* Metachunk::allocate(size_t word_size) { MetaWord* result = NULL; --- 54,64 ---- _container(container) { _top = initial_top(); #ifdef ASSERT set_is_tagged_free(false); ! mangle(uninitMetaWordVal); #endif } MetaWord* Metachunk::allocate(size_t word_size) { MetaWord* result = NULL;
*** 96,111 **** used_word_size(), free_word_size()); } } #ifndef PRODUCT ! void Metachunk::mangle() { ! // Mangle the payload of the chunk and not the links that // maintain list of chunks. ! HeapWord* start = (HeapWord*)(bottom() + overhead()); size_t size = word_size() - overhead(); ! Copy::fill_to_words(start, size, metadata_chunk_initialize); } #endif // PRODUCT void Metachunk::verify() { #ifdef ASSERT --- 89,104 ---- used_word_size(), free_word_size()); } } #ifndef PRODUCT ! void Metachunk::mangle(juint word_value) { ! // Overwrite the payload of the chunk and not the links that // maintain list of chunks. ! HeapWord* start = (HeapWord*)initial_top(); size_t size = word_size() - overhead(); ! Copy::fill_to_words(start, size, word_value); } #endif // PRODUCT void Metachunk::verify() { #ifdef ASSERT
src/share/vm/memory/metachunk.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File