< prev index next >
src/hotspot/share/gc/shared/space.cpp
Print this page
rev 49289 : 8199735: Mark word updates need to use Access API
@@ -395,11 +395,11 @@
q->forward_to(oop(compact_top));
assert(q->is_gc_marked(), "encoding the pointer should preserve the mark");
} else {
// if the object isn't moving we can just set the mark to the default
// mark and handle it specially later on.
- q->init_mark();
+ q->init_mark_raw();
assert(q->forwardee() == NULL, "should be forwarded to NULL");
}
compact_top += size;
@@ -693,18 +693,18 @@
if (size >= align_object_size(array_header_size)) {
size_t length = (size - array_header_size) * (HeapWordSize / sizeof(jint));
// allocate uninitialized int array
typeArrayOop t = (typeArrayOop) allocate(size);
assert(t != NULL, "allocation should succeed");
- t->set_mark(markOopDesc::prototype());
+ t->set_mark_raw(markOopDesc::prototype());
t->set_klass(Universe::intArrayKlassObj());
t->set_length((int)length);
} else {
assert(size == CollectedHeap::min_fill_size(),
"size for smallest fake object doesn't match");
instanceOop obj = (instanceOop) allocate(size);
- obj->set_mark(markOopDesc::prototype());
+ obj->set_mark_raw(markOopDesc::prototype());
obj->set_klass_gap(0);
obj->set_klass(SystemDictionary::Object_klass());
}
}
< prev index next >