comparison src/share/vm/oops/objArrayKlass.cpp @ 17560:562643f42b65

Merge with jdk8u5-b13
author Gilles Duboscq <duboscq@ssw.jku.at>
date Wed, 15 Oct 2014 12:04:20 +0200
parents 89152779163c b478fbd63109
children 52b4284cb496
comparison
equal deleted inserted replaced
17524:89152779163c 17560:562643f42b65
267 oop new_val = element_is_null ? oop(NULL) 267 oop new_val = element_is_null ? oop(NULL)
268 : oopDesc::decode_heap_oop_not_null(element); 268 : oopDesc::decode_heap_oop_not_null(element);
269 if (element_is_null || 269 if (element_is_null ||
270 (new_val->klass())->is_subtype_of(bound)) { 270 (new_val->klass())->is_subtype_of(bound)) {
271 bs->write_ref_field_pre(p, new_val); 271 bs->write_ref_field_pre(p, new_val);
272 *p = *from; 272 *p = element;
273 } else { 273 } else {
274 // We must do a barrier to cover the partial copy. 274 // We must do a barrier to cover the partial copy.
275 const size_t pd = pointer_delta(p, dst, (size_t)heapOopSize); 275 const size_t pd = pointer_delta(p, dst, (size_t)heapOopSize);
276 // pointer delta is scaled to number of elements (length field in 276 // pointer delta is scaled to number of elements (length field in
277 // objArrayOop) which we assume is 32 bit. 277 // objArrayOop) which we assume is 32 bit.