equal
deleted
inserted
replaced
169 frame deoptee = stub_frame.sender(&map); |
169 frame deoptee = stub_frame.sender(&map); |
170 // Set the deoptee nmethod |
170 // Set the deoptee nmethod |
171 assert(thread->deopt_compiled_method() == NULL, "Pending deopt!"); |
171 assert(thread->deopt_compiled_method() == NULL, "Pending deopt!"); |
172 CompiledMethod* cm = deoptee.cb()->as_compiled_method_or_null(); |
172 CompiledMethod* cm = deoptee.cb()->as_compiled_method_or_null(); |
173 thread->set_deopt_compiled_method(cm); |
173 thread->set_deopt_compiled_method(cm); |
174 bool skip_internal = (cm != NULL) && !cm->is_compiled_by_jvmci(); |
|
175 |
174 |
176 if (VerifyStack) { |
175 if (VerifyStack) { |
177 thread->validate_frame_layout(); |
176 thread->validate_frame_layout(); |
178 } |
177 } |
179 |
178 |
239 } |
238 } |
240 if (objects != NULL) { |
239 if (objects != NULL) { |
241 JRT_BLOCK |
240 JRT_BLOCK |
242 realloc_failures = realloc_objects(thread, &deoptee, objects, THREAD); |
241 realloc_failures = realloc_objects(thread, &deoptee, objects, THREAD); |
243 JRT_END |
242 JRT_END |
|
243 bool skip_internal = (cm != NULL) && !cm->is_compiled_by_jvmci(); |
244 reassign_fields(&deoptee, &map, objects, realloc_failures, skip_internal); |
244 reassign_fields(&deoptee, &map, objects, realloc_failures, skip_internal); |
245 #ifndef PRODUCT |
245 #ifndef PRODUCT |
246 if (TraceDeoptimization) { |
246 if (TraceDeoptimization) { |
247 ttyLocker ttyl; |
247 ttyLocker ttyl; |
248 tty->print_cr("REALLOC OBJECTS in thread " INTPTR_FORMAT, p2i(thread)); |
248 tty->print_cr("REALLOC OBJECTS in thread " INTPTR_FORMAT, p2i(thread)); |
1649 xtty->end_head(); |
1649 xtty->end_head(); |
1650 } |
1650 } |
1651 if (TraceDeoptimization) { // make noise on the tty |
1651 if (TraceDeoptimization) { // make noise on the tty |
1652 tty->print("Uncommon trap occurred in"); |
1652 tty->print("Uncommon trap occurred in"); |
1653 nm->method()->print_short_name(tty); |
1653 nm->method()->print_short_name(tty); |
1654 tty->print(" compiler=%s compile_id=%d", nm->compiler() == NULL ? "" : nm->compiler()->name(), nm->compile_id()); |
1654 tty->print(" compiler=%s compile_id=%d", nm->compiler_name(), nm->compile_id()); |
1655 #if INCLUDE_JVMCI |
1655 #if INCLUDE_JVMCI |
1656 if (nm->is_nmethod()) { |
1656 if (nm->is_nmethod()) { |
1657 oop installedCode = nm->as_nmethod()->jvmci_installed_code(); |
1657 oop installedCode = nm->as_nmethod()->jvmci_installed_code(); |
1658 if (installedCode != NULL) { |
1658 if (installedCode != NULL) { |
1659 oop installedCodeName = NULL; |
1659 oop installedCodeName = NULL; |