< prev index next >

src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp

Print this page
rev 59326 : 8244949: [PPC64] Reengineer assembler stop function
Reviewed-by:

*** 488,498 **** Label index_ok; lwa(R0, arrayOopDesc::length_offset_in_bytes(), result); sldi(R0, R0, LogBytesPerHeapOop); cmpd(CCR0, tmp, R0); blt(CCR0, index_ok); ! stop("resolved reference index out of bounds", 0x09256); bind(index_ok); #endif // Add in the index. add(result, tmp, result); load_heap_oop(result, arrayOopDesc::base_offset_in_bytes(T_OBJECT), result, tmp, R0, false, 0, L_handle_null); --- 488,498 ---- Label index_ok; lwa(R0, arrayOopDesc::length_offset_in_bytes(), result); sldi(R0, R0, LogBytesPerHeapOop); cmpd(CCR0, tmp, R0); blt(CCR0, index_ok); ! stop("resolved reference index out of bounds"); bind(index_ok); #endif // Add in the index. add(result, tmp, result); load_heap_oop(result, arrayOopDesc::base_offset_in_bytes(T_OBJECT), result, tmp, R0, false, 0, L_handle_null);
*** 1141,1151 **** save_interpreter_state(Rscratch2); #ifdef ASSERT ld(Rscratch1, _ijava_state_neg(top_frame_sp), Rscratch2); // Rscratch2 contains fp cmpd(CCR0, R21_sender_SP, Rscratch1); ! asm_assert_eq("top_frame_sp incorrect", 0x951); #endif bctr(); } --- 1141,1151 ---- save_interpreter_state(Rscratch2); #ifdef ASSERT ld(Rscratch1, _ijava_state_neg(top_frame_sp), Rscratch2); // Rscratch2 contains fp cmpd(CCR0, R21_sender_SP, Rscratch1); ! asm_assert_eq("top_frame_sp incorrect"); #endif bctr(); }
*** 2249,2259 **** { Label Lok; subf(R0, R1_SP, scratch); cmpdi(CCR0, R0, frame::abi_reg_args_size + frame::ijava_state_size); bge(CCR0, Lok); ! stop("frame too small (restore istate)", 0x5432); bind(Lok); } #endif } --- 2249,2259 ---- { Label Lok; subf(R0, R1_SP, scratch); cmpdi(CCR0, R0, frame::abi_reg_args_size + frame::ijava_state_size); bge(CCR0, Lok); ! stop("frame too small (restore istate)"); bind(Lok); } #endif }
< prev index next >