src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp
changeset 59307 fc216dcef2bb
parent 58947 d5156218928d
equal deleted inserted replaced
59306:bdf999e08a3a 59307:fc216dcef2bb
   441 
   441 
   442   if (state == atos) {
   442   if (state == atos) {
   443     Register obj = r0;
   443     Register obj = r0;
   444     Register mdp = r1;
   444     Register mdp = r1;
   445     Register tmp = r2;
   445     Register tmp = r2;
   446     __ ldr(mdp, Address(rmethod, Method::method_data_offset()));
       
   447     __ profile_return_type(mdp, obj, tmp);
   446     __ profile_return_type(mdp, obj, tmp);
   448   }
   447   }
   449 
   448 
   450   // Pop N words from the stack
   449   // Pop N words from the stack
   451   __ get_cache_and_index_at_bcp(r1, r2, 1, index_size);
   450   __ get_cache_and_index_at_bcp(r1, r2, 1, index_size);
  1631    const Address do_not_unlock_if_synchronized(rthread,
  1630    const Address do_not_unlock_if_synchronized(rthread,
  1632         in_bytes(JavaThread::do_not_unlock_if_synchronized_offset()));
  1631         in_bytes(JavaThread::do_not_unlock_if_synchronized_offset()));
  1633   __ mov(rscratch2, true);
  1632   __ mov(rscratch2, true);
  1634   __ strb(rscratch2, do_not_unlock_if_synchronized);
  1633   __ strb(rscratch2, do_not_unlock_if_synchronized);
  1635 
  1634 
  1636   Label no_mdp;
       
  1637   Register mdp = r3;
  1635   Register mdp = r3;
  1638   __ ldr(mdp, Address(rmethod, Method::method_data_offset()));
       
  1639   __ cbz(mdp, no_mdp);
       
  1640   __ add(mdp, mdp, in_bytes(MethodData::data_offset()));
       
  1641   __ profile_parameters_type(mdp, r1, r2);
  1636   __ profile_parameters_type(mdp, r1, r2);
  1642   __ bind(no_mdp);
       
  1643 
  1637 
  1644   // increment invocation count & check for overflow
  1638   // increment invocation count & check for overflow
  1645   Label invocation_counter_overflow;
  1639   Label invocation_counter_overflow;
  1646   Label profile_method;
  1640   Label profile_method;
  1647   Label profile_method_continue;
  1641   Label profile_method_continue;