< prev index next >

src/hotspot/share/runtime/deoptimization.cpp

Print this page

        

*** 1034,1045 **** guarantee(!HAS_PENDING_EXCEPTION, "Should not have any exceptions pending"); assert(vk->is_value(), "must be a ValueKlass"); field._klass = InstanceKlass::cast(vk); } else { // Non-flattened value type field ! // TODO change this when we use T_VALUETYPEPTR ! field._type = T_OBJECT; } } fields->append(field); } } --- 1034,1044 ---- guarantee(!HAS_PENDING_EXCEPTION, "Should not have any exceptions pending"); assert(vk->is_value(), "must be a ValueKlass"); field._klass = InstanceKlass::cast(vk); } else { // Non-flattened value type field ! field._type = T_VALUETYPEPTR; } } fields->append(field); } }
*** 1049,1059 **** ScopeValue* scope_field = sv->field_at(svIndex); StackValue* value = StackValue::create_stack_value(fr, reg_map, scope_field); int offset = base_offset + fields->at(i)._offset; BasicType type = fields->at(i)._type; switch (type) { ! case T_OBJECT: case T_ARRAY: assert(value->type() == T_OBJECT, "Agreement."); obj->obj_field_put(offset, value->get_obj()()); break; case T_VALUETYPE: { --- 1048,1060 ---- ScopeValue* scope_field = sv->field_at(svIndex); StackValue* value = StackValue::create_stack_value(fr, reg_map, scope_field); int offset = base_offset + fields->at(i)._offset; BasicType type = fields->at(i)._type; switch (type) { ! case T_OBJECT: ! case T_VALUETYPEPTR: ! case T_ARRAY: assert(value->type() == T_OBJECT, "Agreement."); obj->obj_field_put(offset, value->get_obj()()); break; case T_VALUETYPE: {
< prev index next >