src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp
changeset 57626 91bc70505019
parent 55322 bc5baf205475
child 57777 90ead0febf56
equal deleted inserted replaced
57625:29dfefad1d99 57626:91bc70505019
   766                                              Register Rscratch1, Register Rscratch2) {
   766                                              Register Rscratch1, Register Rscratch2) {
   767   // Pop interpreter frame.
   767   // Pop interpreter frame.
   768   ld(Rscratch1, 0, R1_SP); // *SP
   768   ld(Rscratch1, 0, R1_SP); // *SP
   769   ld(Rsender_sp, _ijava_state_neg(sender_sp), Rscratch1); // top_frame_sp
   769   ld(Rsender_sp, _ijava_state_neg(sender_sp), Rscratch1); // top_frame_sp
   770   ld(Rscratch2, 0, Rscratch1); // **SP
   770   ld(Rscratch2, 0, Rscratch1); // **SP
   771 #ifdef ASSERT
       
   772   {
       
   773     Label Lok;
       
   774     ld(R0, _ijava_state_neg(ijava_reserved), Rscratch1);
       
   775     cmpdi(CCR0, R0, 0x5afe);
       
   776     beq(CCR0, Lok);
       
   777     stop("frame corrupted (remove activation)", 0x5afe);
       
   778     bind(Lok);
       
   779   }
       
   780 #endif
       
   781   if (return_pc!=noreg) {
   771   if (return_pc!=noreg) {
   782     ld(return_pc, _abi(lr), Rscratch1); // LR
   772     ld(return_pc, _abi(lr), Rscratch1); // LR
   783   }
   773   }
   784 
   774 
   785   // Merge top frames.
   775   // Merge top frames.
  2261     cmpdi(CCR0, R0, frame::abi_reg_args_size + frame::ijava_state_size);
  2251     cmpdi(CCR0, R0, frame::abi_reg_args_size + frame::ijava_state_size);
  2262     bge(CCR0, Lok);
  2252     bge(CCR0, Lok);
  2263     stop("frame too small (restore istate)", 0x5432);
  2253     stop("frame too small (restore istate)", 0x5432);
  2264     bind(Lok);
  2254     bind(Lok);
  2265   }
  2255   }
  2266   {
       
  2267     Label Lok;
       
  2268     ld(R0, _ijava_state_neg(ijava_reserved), scratch);
       
  2269     cmpdi(CCR0, R0, 0x5afe);
       
  2270     beq(CCR0, Lok);
       
  2271     stop("frame corrupted (restore istate)", 0x5afe);
       
  2272     bind(Lok);
       
  2273   }
       
  2274 #endif
  2256 #endif
  2275 }
  2257 }
  2276 
  2258 
  2277 void InterpreterMacroAssembler::get_method_counters(Register method,
  2259 void InterpreterMacroAssembler::get_method_counters(Register method,
  2278                                                     Register Rcounters,
  2260                                                     Register Rcounters,