diff --git a/src/hotspot/cpu/aarch64/c1_CodeStubs_aarch64.cpp b/src/hotspot/cpu/aarch64/c1_CodeStubs_aarch64.cpp index 911ba765c52..4cdd1b83526 100644 --- a/src/hotspot/cpu/aarch64/c1_CodeStubs_aarch64.cpp +++ b/src/hotspot/cpu/aarch64/c1_CodeStubs_aarch64.cpp @@ -196,7 +196,6 @@ NewInstanceStub::NewInstanceStub(LIR_Opr klass_reg, LIR_Opr result, ciInstanceKl _klass_reg = klass_reg; _info = new CodeEmitInfo(info); assert(stub_id == Runtime1::new_instance_id || - stub_id == Runtime1::new_instance_no_inline_id || stub_id == Runtime1::fast_new_instance_id || stub_id == Runtime1::fast_new_instance_init_check_id, "need new_instance id"); diff --git a/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp b/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp index 52e8cc1702e..5cc027e99f8 100644 --- a/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp +++ b/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp @@ -1136,7 +1136,7 @@ void LIRGenerator::do_NewInstance(NewInstance* x) { tty->print_cr(" ###class not loaded at new bci %d", x->printable_bci()); } #endif - CodeEmitInfo* info = state_for(x, x->state()); + CodeEmitInfo* info = state_for(x, x->needs_state_before() ? x->state_before() : x->state()); LIR_Opr reg = result_register_for(x->type()); new_instance(reg, x->klass(), x->is_unresolved(), /* allow_inline */ false, @@ -1149,23 +1149,6 @@ void LIRGenerator::do_NewInstance(NewInstance* x) { __ move(reg, result); } -void LIRGenerator::do_NewInlineTypeInstance(NewInlineTypeInstance* x) { - // Mapping to do_NewInstance (same code) but use state_before for reexecution. - CodeEmitInfo* info = state_for(x, x->state_before()); - x->set_to_object_type(); - LIR_Opr reg = result_register_for(x->type()); - new_instance(reg, x->klass(), false, - /* allow_inline */ true, - FrameMap::r10_oop_opr, - FrameMap::r11_oop_opr, - FrameMap::r4_oop_opr, - LIR_OprFact::illegalOpr, - FrameMap::r3_metadata_opr, info); - LIR_Opr result = rlock_result(x); - __ move(reg, result); - -} - void LIRGenerator::do_NewTypeArray(NewTypeArray* x) { CodeEmitInfo* info = state_for(x, x->state()); diff --git a/src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp b/src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp index ab2a6da0021..01a617cb5e8 100644 --- a/src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp +++ b/src/hotspot/cpu/aarch64/c1_Runtime1_aarch64.cpp @@ -650,7 +650,6 @@ OopMapSet* Runtime1::generate_code_for(StubID id, StubAssembler* sasm) { break; case new_instance_id: - case new_instance_no_inline_id: case fast_new_instance_id: case fast_new_instance_init_check_id: { @@ -659,8 +658,6 @@ OopMapSet* Runtime1::generate_code_for(StubID id, StubAssembler* sasm) { if (id == new_instance_id) { __ set_info("new_instance", dont_gc_arguments); - } else if (id == new_instance_no_inline_id) { - __ set_info("new_instance_no_inline", dont_gc_arguments); } else if (id == fast_new_instance_id) { __ set_info("fast new_instance", dont_gc_arguments); } else { @@ -671,11 +668,7 @@ OopMapSet* Runtime1::generate_code_for(StubID id, StubAssembler* sasm) { __ enter(); OopMap* map = save_live_registers(sasm); int call_offset; - if (id == new_instance_no_inline_id) { - call_offset = __ call_RT(obj, noreg, CAST_FROM_FN_PTR(address, new_instance_no_inline), klass); - } else { - call_offset = __ call_RT(obj, noreg, CAST_FROM_FN_PTR(address, new_instance), klass); - } + call_offset = __ call_RT(obj, noreg, CAST_FROM_FN_PTR(address, new_instance), klass); oop_maps = new OopMapSet(); oop_maps->add_gc_map(call_offset, map); restore_live_registers_except_r0(sasm);