< prev index next >

src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp

Print this page

        

@@ -1669,10 +1669,20 @@
    const Address do_not_unlock_if_synchronized(rthread,
         in_bytes(JavaThread::do_not_unlock_if_synchronized_offset()));
   __ mov(rscratch2, true);
   __ strb(rscratch2, do_not_unlock_if_synchronized);
 
+  Register tmp1 = r1;
+  Register tmp2 = r2;
+  Register mdp  = r4;
+  Label no_mdp;
+  __ ldr(mdp, Address(rmethod, Method::method_data_offset()));
+  __ cbz(mdp, no_mdp);
+  __ add(mdp, mdp, in_bytes(MethodData::data_offset()));
+  __ profile_parameters_type(mdp, tmp1, tmp2);
+  __ bind(no_mdp);
+
   // increment invocation count & check for overflow
   Label invocation_counter_overflow;
   Label profile_method;
   Label profile_method_continue;
   if (inc_counter) {
< prev index next >