--- old/src/hotspot/share/c1/c1_Runtime1.cpp 2019-02-13 17:02:42.487825834 -0800 +++ new/src/hotspot/share/c1/c1_Runtime1.cpp 2019-02-13 17:02:42.271817680 -0800 @@ -429,9 +429,10 @@ // We have a non-empty flattened array, so the element type must have been initialized. assert(vklass->is_initialized(), "must be"); Handle holder(THREAD, vklass->klass_holder()); // keep the vklass alive + valueArrayHandle ha(THREAD, array); oop obj = vklass->allocate_instance(CHECK); - void* src = array->value_at_addr(index, vaklass->layout_helper()); + void* src = ha()->value_at_addr(index, vaklass->layout_helper()); vklass->value_store(src, vklass->data_for_oop(obj), vaklass->element_byte_size(), true, false); thread->set_vm_result(obj);