src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp	Thu Nov  3 14:15:53 2016
--- new/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp	Thu Nov  3 14:15:53 2016

*** 373,383 **** --- 373,383 ---- // failures when searching for the corresponding bci => add a nop // (was bug 5/14/1999 - gri) __ nop(); // generate code for exception handler ! address handler_base = __ start_a_stub(exception_handler_size()); if (handler_base == NULL) { // not enough space left for the handler bailout("exception handler overflow"); return -1; }
*** 391,401 **** --- 391,401 ---- // check that there is really an exception __ verify_not_null_oop(r0); // search an exception handler (r0: exception oop, r3: throwing pc) __ far_call(RuntimeAddress(Runtime1::entry_for(Runtime1::handle_exception_from_callee_id))); __ should_not_reach_here(); ! guarantee(code_offset() - offset <= exception_handler_size(), "overflow"); __ end_a_stub(); return offset; }
*** 465,486 **** --- 465,486 ---- // failures when searching for the corresponding bci => add a nop // (was bug 5/14/1999 - gri) __ nop(); // generate code for exception handler ! address handler_base = __ start_a_stub(deopt_handler_size()); if (handler_base == NULL) { // not enough space left for the handler bailout("deopt handler overflow"); return -1; } int offset = code_offset(); __ adr(lr, pc()); __ far_jump(RuntimeAddress(SharedRuntime::deopt_blob()->unpack())); ! guarantee(code_offset() - offset <= deopt_handler_size(), "overflow"); __ end_a_stub(); return offset; }
*** 1999,2009 **** --- 1999,2009 ---- } void LIR_Assembler::emit_static_call_stub() { address call_pc = __ pc(); ! address stub = __ start_a_stub(call_stub_size()); if (stub == NULL) { bailout("static call stub overflow"); return; }
*** 2012,2022 **** --- 2012,2022 ---- __ relocate(static_stub_Relocation::spec(call_pc)); __ mov_metadata(rmethod, (Metadata*)NULL); __ movptr(rscratch1, 0); __ br(rscratch1); ! assert(__ offset() - start <= call_stub_size(), "stub too big"); __ end_a_stub(); } void LIR_Assembler::throw_op(LIR_Opr exceptionPC, LIR_Opr exceptionOop, CodeEmitInfo* info) {

src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File