comparison src/share/vm/oops/cpCacheKlass.cpp @ 4137:04b9a2566eec

Merge with hsx23/hotspot.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Sat, 17 Dec 2011 21:40:27 +0100
parents baf763f388e6
children
comparison
equal deleted inserted replaced
3737:9dc19b7d89a3 4137:04b9a2566eec
61 // size(), before setting its klass word further below. 61 // size(), before setting its klass word further below.
62 // constantPoolCacheOop cache = (constantPoolCacheOop) 62 // constantPoolCacheOop cache = (constantPoolCacheOop)
63 // CollectedHeap::permanent_obj_allocate(klass, size, CHECK_NULL); 63 // CollectedHeap::permanent_obj_allocate(klass, size, CHECK_NULL);
64 64
65 oop obj = CollectedHeap::permanent_obj_allocate_no_klass_install(klass, size, CHECK_NULL); 65 oop obj = CollectedHeap::permanent_obj_allocate_no_klass_install(klass, size, CHECK_NULL);
66 NOT_PRODUCT(Universe::heap()->check_for_bad_heap_word_value((HeapWord*) obj, 66 #ifndef PRODUCT
67 size)); 67 const size_t hs = oopDesc::header_size();
68 Universe::heap()->check_for_bad_heap_word_value(((HeapWord*) obj)+hs, size-hs);
69 #endif
68 constantPoolCacheOop cache = (constantPoolCacheOop) obj; 70 constantPoolCacheOop cache = (constantPoolCacheOop) obj;
69 assert(!UseConcMarkSweepGC || obj->klass_or_null() == NULL, 71 assert(!UseConcMarkSweepGC || obj->klass_or_null() == NULL,
70 "klass should be NULL here when using CMS"); 72 "klass should be NULL here when using CMS");
71 cache->set_length(length); // should become visible before klass is set below. 73 cache->set_length(length); // should become visible before klass is set below.
72 cache->set_constant_pool(NULL); 74 cache->set_constant_pool(NULL);