src/share/vm/runtime/deoptimization.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/runtime/deoptimization.cpp Wed Jun 14 12:29:23 2017
--- new/src/share/vm/runtime/deoptimization.cpp Wed Jun 14 12:29:23 2017
*** 1143,1153 ****
--- 1143,1153 ----
return svIndex;
}
// restore fields of an eliminated value type array
void Deoptimization::reassign_value_array_elements(frame* fr, RegisterMap* reg_map, ObjectValue* sv, valueArrayOop obj, ValueArrayKlass* vak, TRAPS) {
! ValueKlass* vk = (ValueKlass*)vak->element_klass();
assert(vk->flatten_array(), "should only be used for flattened value type arrays");
// Adjust offset to omit oop header
int base_offset = arrayOopDesc::base_offset_in_bytes(T_VALUETYPE) - ValueKlass::cast(vk)->first_field_offset();
// Initialize all elements of the flattened value type array
for (int i = 0; i < sv->field_size(); i++) {
src/share/vm/runtime/deoptimization.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File