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* ProtectionDomainSet_lock = NULL; |
42 Mutex* SharedDictionary_lock = NULL; |
43 Mutex* SharedDictionary_lock = NULL; |
43 Mutex* Module_lock = NULL; |
44 Mutex* Module_lock = NULL; |
44 Mutex* CompiledIC_lock = NULL; |
45 Mutex* CompiledIC_lock = NULL; |
45 Mutex* InlineCacheBuffer_lock = NULL; |
46 Mutex* InlineCacheBuffer_lock = NULL; |
46 Mutex* VMStatistic_lock = NULL; |
47 Mutex* VMStatistic_lock = NULL; |
252 def(Patching_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never); // used for safepointing and code patching. |
253 def(Patching_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never); // used for safepointing and code patching. |
253 def(Service_lock , PaddedMonitor, special, true, Monitor::_safepoint_check_never); // used for service thread operations |
254 def(Service_lock , PaddedMonitor, special, true, Monitor::_safepoint_check_never); // used for service thread operations |
254 def(JmethodIdCreation_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for creating jmethodIDs. |
255 def(JmethodIdCreation_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for creating jmethodIDs. |
255 |
256 |
256 def(SystemDictionary_lock , PaddedMonitor, leaf, true, Monitor::_safepoint_check_always); // lookups done by VM thread |
257 def(SystemDictionary_lock , PaddedMonitor, leaf, true, Monitor::_safepoint_check_always); // lookups done by VM thread |
|
258 def(ProtectionDomainSet_lock , PaddedMutex , leaf-1, true, Monitor::_safepoint_check_never); |
257 def(SharedDictionary_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // lookups done by VM thread |
259 def(SharedDictionary_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // lookups done by VM thread |
258 def(Module_lock , PaddedMutex , leaf+2, true, Monitor::_safepoint_check_always); |
260 def(Module_lock , PaddedMutex , leaf+2, true, Monitor::_safepoint_check_always); |
259 def(InlineCacheBuffer_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never); |
261 def(InlineCacheBuffer_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never); |
260 def(VMStatistic_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); |
262 def(VMStatistic_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); |
261 def(ExpandHeap_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // Used during compilation by VM thread |
263 def(ExpandHeap_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // Used during compilation by VM thread |