src/hotspot/cpu/aarch64/templateInterpreterGenerator_aarch64.cpp
changeset 57616 76a82db7181a
parent 55504 b7f68ddec66f
child 57620 04d6e5758a99
equal deleted inserted replaced
57615:a5ea1b64dcd7 57616:76a82db7181a
   512 #if INCLUDE_JVMCI
   512 #if INCLUDE_JVMCI
   513   // Check if we need to take lock at entry of synchronized method.  This can
   513   // Check if we need to take lock at entry of synchronized method.  This can
   514   // only occur on method entry so emit it only for vtos with step 0.
   514   // only occur on method entry so emit it only for vtos with step 0.
   515   if ((EnableJVMCI || UseAOT) && state == vtos && step == 0) {
   515   if ((EnableJVMCI || UseAOT) && state == vtos && step == 0) {
   516     Label L;
   516     Label L;
   517     __ ldr(rscratch1, Address(rthread, Thread::pending_exception_offset()));
   517     __ ldrb(rscratch1, Address(rthread, JavaThread::pending_monitorenter_offset()));
   518     __ cbz(rscratch1, L);
   518     __ cbz(rscratch1, L);
   519     // Clear flag.
   519     // Clear flag.
   520     __ strb(zr, Address(rthread, JavaThread::pending_monitorenter_offset()));
   520     __ strb(zr, Address(rthread, JavaThread::pending_monitorenter_offset()));
   521     // Take lock.
   521     // Take lock.
   522     lock_method();
   522     lock_method();
   523     __ bind(L);
   523     __ bind(L);
   524   } else {
   524   } else {
   525 #ifdef ASSERT
   525 #ifdef ASSERT
   526     if (EnableJVMCI) {
   526     if (EnableJVMCI) {
   527       Label L;
   527       Label L;
   528       __ ldr(rscratch1, Address(rthread, Thread::pending_exception_offset()));
   528       __ ldrb(rscratch1, Address(rthread, JavaThread::pending_monitorenter_offset()));
   529       __ cbz(rscratch1, L);
   529       __ cbz(rscratch1, L);
   530       __ stop("unexpected pending monitor in deopt entry");
   530       __ stop("unexpected pending monitor in deopt entry");
   531       __ bind(L);
   531       __ bind(L);
   532     }
   532     }
   533 #endif
   533 #endif