hotspot/src/share/vm/runtime/sharedRuntime.cpp
changeset 42088 71d7ced6c439
parent 41545 45a3f587a838
child 42575 bd1618170c93
equal deleted inserted replaced
42087:afd6ae4fec81 42088:71d7ced6c439
  1981 
  1981 
  1982 
  1982 
  1983 // Handles the uncommon case in locking, i.e., contention or an inflated lock.
  1983 // Handles the uncommon case in locking, i.e., contention or an inflated lock.
  1984 JRT_BLOCK_ENTRY(void, SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock* lock, JavaThread* thread))
  1984 JRT_BLOCK_ENTRY(void, SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock* lock, JavaThread* thread))
  1985   // Disable ObjectSynchronizer::quick_enter() in default config
  1985   // Disable ObjectSynchronizer::quick_enter() in default config
  1986   // on AARCH64 until JDK-8153107 is resolved.
  1986   // on AARCH64 and ARM until JDK-8153107 is resolved.
  1987   if (AARCH64_ONLY((SyncFlags & 256) != 0 &&) !SafepointSynchronize::is_synchronizing()) {
  1987   if (ARM_ONLY((SyncFlags & 256) != 0 &&)
       
  1988       AARCH64_ONLY((SyncFlags & 256) != 0 &&)
       
  1989       !SafepointSynchronize::is_synchronizing()) {
  1988     // Only try quick_enter() if we're not trying to reach a safepoint
  1990     // Only try quick_enter() if we're not trying to reach a safepoint
  1989     // so that the calling thread reaches the safepoint more quickly.
  1991     // so that the calling thread reaches the safepoint more quickly.
  1990     if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;
  1992     if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;
  1991   }
  1993   }
  1992   // NO_ASYNC required because an async exception on the state transition destructor
  1994   // NO_ASYNC required because an async exception on the state transition destructor