src/hotspot/share/runtime/mutexLocker.cpp
changeset 50152 b5023063346d
parent 50113 caf115bb98ad
child 50445 bd6b78feb6a3
equal deleted inserted replaced
50151:e2eff4dcebbd 50152:b5023063346d
    37 // eliminating the indirection and using instances instead.
    37 // eliminating the indirection and using instances instead.
    38 // Consider using GCC's __read_mostly.
    38 // Consider using GCC's __read_mostly.
    39 
    39 
    40 Mutex*   Patching_lock                = NULL;
    40 Mutex*   Patching_lock                = NULL;
    41 Monitor* SystemDictionary_lock        = NULL;
    41 Monitor* SystemDictionary_lock        = NULL;
       
    42 Mutex*   SharedDictionary_lock        = NULL;
    42 Mutex*   Module_lock                  = NULL;
    43 Mutex*   Module_lock                  = NULL;
    43 Mutex*   CompiledIC_lock              = NULL;
    44 Mutex*   CompiledIC_lock              = NULL;
    44 Mutex*   InlineCacheBuffer_lock       = NULL;
    45 Mutex*   InlineCacheBuffer_lock       = NULL;
    45 Mutex*   VMStatistic_lock             = NULL;
    46 Mutex*   VMStatistic_lock             = NULL;
    46 Mutex*   JNIGlobalAlloc_lock          = NULL;
    47 Mutex*   JNIGlobalAlloc_lock          = NULL;
   219   def(Patching_lock                , PaddedMutex  , special,     true,  Monitor::_safepoint_check_never);      // used for safepointing and code patching.
   220   def(Patching_lock                , PaddedMutex  , special,     true,  Monitor::_safepoint_check_never);      // used for safepointing and code patching.
   220   def(Service_lock                 , PaddedMonitor, special,     true,  Monitor::_safepoint_check_never);      // used for service thread operations
   221   def(Service_lock                 , PaddedMonitor, special,     true,  Monitor::_safepoint_check_never);      // used for service thread operations
   221   def(JmethodIdCreation_lock       , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_always);     // used for creating jmethodIDs.
   222   def(JmethodIdCreation_lock       , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_always);     // used for creating jmethodIDs.
   222 
   223 
   223   def(SystemDictionary_lock        , PaddedMonitor, leaf,        true,  Monitor::_safepoint_check_always);     // lookups done by VM thread
   224   def(SystemDictionary_lock        , PaddedMonitor, leaf,        true,  Monitor::_safepoint_check_always);     // lookups done by VM thread
       
   225   def(SharedDictionary_lock        , PaddedMutex,   leaf,        true,  Monitor::_safepoint_check_always);     // lookups done by VM thread
   224   def(Module_lock                  , PaddedMutex  , leaf+2,      true,  Monitor::_safepoint_check_always);
   226   def(Module_lock                  , PaddedMutex  , leaf+2,      true,  Monitor::_safepoint_check_always);
   225   def(InlineCacheBuffer_lock       , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_always);
   227   def(InlineCacheBuffer_lock       , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_always);
   226   def(VMStatistic_lock             , PaddedMutex  , leaf,        false, Monitor::_safepoint_check_always);
   228   def(VMStatistic_lock             , PaddedMutex  , leaf,        false, Monitor::_safepoint_check_always);
   227   def(ExpandHeap_lock              , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_always);     // Used during compilation by VM thread
   229   def(ExpandHeap_lock              , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_always);     // Used during compilation by VM thread
   228   def(JNIHandleBlockFreeList_lock  , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_never);      // handles are used by VM thread
   230   def(JNIHandleBlockFreeList_lock  , PaddedMutex  , leaf,        true,  Monitor::_safepoint_check_never);      // handles are used by VM thread