hotspot/src/share/vm/runtime/sharedRuntime.cpp
changeset 30315 7e56522cb687
parent 30310 522ea430079f
child 30764 fec48bf5a827
equal deleted inserted replaced
30314:3d55863a66ba 30315:7e56522cb687
  1791 JRT_END
  1791 JRT_END
  1792 
  1792 
  1793 
  1793 
  1794 // Handles the uncommon case in locking, i.e., contention or an inflated lock.
  1794 // Handles the uncommon case in locking, i.e., contention or an inflated lock.
  1795 JRT_BLOCK_ENTRY(void, SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock* lock, JavaThread* thread))
  1795 JRT_BLOCK_ENTRY(void, SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock* lock, JavaThread* thread))
  1796   if (!SafepointSynchronize::is_synchronizing()) {
  1796   // Disable ObjectSynchronizer::quick_enter() in default config
       
  1797   // until JDK-8077392 is resolved.
       
  1798   if ((SyncFlags & 256) != 0 && !SafepointSynchronize::is_synchronizing()) {
  1797     // Only try quick_enter() if we're not trying to reach a safepoint
  1799     // Only try quick_enter() if we're not trying to reach a safepoint
  1798     // so that the calling thread reaches the safepoint more quickly.
  1800     // so that the calling thread reaches the safepoint more quickly.
  1799     if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;
  1801     if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;
  1800   }
  1802   }
  1801   // NO_ASYNC required because an async exception on the state transition destructor
  1803   // NO_ASYNC required because an async exception on the state transition destructor