233
234 def(MonitoringSupport_lock , PaddedMutex , native , true, Monitor::_safepoint_check_never); // used for serviceabi
235 }
236 def(ParGCRareEvent_lock , PaddedMutex , leaf , true, Monitor::_safepoint_check_sometimes);
237 def(DerivedPointerTableGC_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never);
238 def(CGCPhaseManager_lock , PaddedMonitor, leaf, false, Monitor::_safepoint_check_sometimes);
239 def(CodeCache_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never);
240 def(RawMonitor_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never);
241 def(OopMapCacheAlloc_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for oop_map_ca
242
243 def(MetaspaceExpand_lock , PaddedMutex , leaf-1, true, Monitor::_safepoint_check_never);
244 def(ClassLoaderDataGraph_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_always);
245
246 def(Patching_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never); // used for safepointi
247 def(Service_lock , PaddedMonitor, special, true, Monitor::_safepoint_check_never); // used for service th
248 def(JmethodIdCreation_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for creating j
249
250 def(SystemDictionary_lock , PaddedMonitor, leaf, true, Monitor::_safepoint_check_always); // lookups done by VM
251 def(SharedDictionary_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // lookups done by VM
252 def(Module_lock , PaddedMutex , leaf+2, true, Monitor::_safepoint_check_always);
253 def(InlineCacheBuffer_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always);
254 def(VMStatistic_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always);
255 def(ExpandHeap_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // Used during compila
256 def(JNIHandleBlockFreeList_lock , PaddedMutex , leaf-1, true, Monitor::_safepoint_check_never); // handles are used by
257 def(SignatureHandlerLibrary_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always);
258 def(SymbolArena_lock , PaddedMutex , leaf+2, true, Monitor::_safepoint_check_never);
259 def(ProfilePrint_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); // serial profile prin
260 def(ExceptionCache_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); // serial profile prin
261 def(OsrList_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never);
262 def(Debug1_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never);
263 #ifndef PRODUCT
264 def(FullGCALot_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); // a lock to make Full
265 #endif
266 def(BeforeExit_lock , PaddedMonitor, leaf, true, Monitor::_safepoint_check_always);
267 def(PerfDataMemAlloc_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for allocating
268 def(PerfDataManager_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for synchroniz
269
270 // CMS_modUnionTable_lock leaf
271 // CMS_bitMap_lock leaf 1
272 // CMS_freeList_lock leaf 2
273
274 def(Safepoint_lock , PaddedMonitor, safepoint, true, Monitor::_safepoint_check_sometimes); // locks SnippetCache_
275
276 def(Threads_lock , PaddedMonitor, barrier, true, Monitor::_safepoint_check_sometimes);
277 def(NonJavaThreadsList_lock , PaddedMutex, leaf, true, Monitor::_safepoint_check_never);
278
279 def(VMOperationQueue_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_sometimes); // VM_thread allowed t
280 def(VMOperationRequest_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_sometimes);
281 def(RetData_lock , PaddedMutex , nonleaf, false, Monitor::_safepoint_check_always);
282 def(Terminator_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_sometimes);
283 def(VtableStubs_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_always);
284 def(Notify_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_always);
285 def(JNIGlobalAlloc_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_never);
286 def(JNIGlobalActive_lock , PaddedMutex , nonleaf-1, true, Monitor::_safepoint_check_never);
287 def(JNIWeakAlloc_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_never);
288 def(JNIWeakActive_lock , PaddedMutex , nonleaf-1, true, Monitor::_safepoint_check_never);
289 def(JNICritical_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_always); // used for JNI critic
290 def(AdapterHandlerLibrary_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_always);
291
292 def(Heap_lock , PaddedMonitor, nonleaf+1, false, Monitor::_safepoint_check_sometimes);
293 def(JfieldIdCreation_lock , PaddedMutex , nonleaf+1, true, Monitor::_safepoint_check_always); // jfieldID, Used in V
294 def(ResolvedMethodTable_lock , PaddedMutex , nonleaf+1, false, Monitor::_safepoint_check_always); // Used to protect Res
295
296 def(CompiledIC_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always); // locks VtableStubs_l
297 def(CompileTaskAlloc_lock , PaddedMutex , nonleaf+2, true, Monitor::_safepoint_check_always);
298 def(CompileStatistics_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always);
299 def(DirectivesStack_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never);
300 def(MultiArray_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always);
301
302 def(JvmtiThreadState_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always); // Used by JvmtiThread
303 def(Management_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always); // used for JVM manage
304
305 def(Compile_lock , PaddedMutex , nonleaf+3, true, Monitor::_safepoint_check_sometimes);
306 def(MethodData_lock , PaddedMutex , nonleaf+3, false, Monitor::_safepoint_check_always);
307 def(TouchedMethodLog_lock , PaddedMutex , nonleaf+3, false, Monitor::_safepoint_check_always);
308
309 def(MethodCompileQueue_lock , PaddedMonitor, nonleaf+4, true, Monitor::_safepoint_check_always);
310 def(Debug2_lock , PaddedMutex , nonleaf+4, true, Monitor::_safepoint_check_never);
311 def(Debug3_lock , PaddedMutex , nonleaf+4, true, Monitor::_safepoint_check_never);
312 def(CompileThread_lock , PaddedMonitor, nonleaf+5, false, Monitor::_safepoint_check_always);
313 def(PeriodicTask_lock , PaddedMonitor, nonleaf+5, true, Monitor::_safepoint_check_sometimes);
314 def(RedefineClasses_lock , PaddedMonitor, nonleaf+5, true, Monitor::_safepoint_check_always);
315
|
233
234 def(MonitoringSupport_lock , PaddedMutex , native , true, Monitor::_safepoint_check_never); // used for serviceabi
235 }
236 def(ParGCRareEvent_lock , PaddedMutex , leaf , true, Monitor::_safepoint_check_sometimes);
237 def(DerivedPointerTableGC_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never);
238 def(CGCPhaseManager_lock , PaddedMonitor, leaf, false, Monitor::_safepoint_check_sometimes);
239 def(CodeCache_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never);
240 def(RawMonitor_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never);
241 def(OopMapCacheAlloc_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for oop_map_ca
242
243 def(MetaspaceExpand_lock , PaddedMutex , leaf-1, true, Monitor::_safepoint_check_never);
244 def(ClassLoaderDataGraph_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_always);
245
246 def(Patching_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never); // used for safepointi
247 def(Service_lock , PaddedMonitor, special, true, Monitor::_safepoint_check_never); // used for service th
248 def(JmethodIdCreation_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for creating j
249
250 def(SystemDictionary_lock , PaddedMonitor, leaf, true, Monitor::_safepoint_check_always); // lookups done by VM
251 def(SharedDictionary_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // lookups done by VM
252 def(Module_lock , PaddedMutex , leaf+2, true, Monitor::_safepoint_check_always);
253 def(InlineCacheBuffer_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never);
254 def(VMStatistic_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always);
255 def(ExpandHeap_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // Used during compila
256 def(JNIHandleBlockFreeList_lock , PaddedMutex , leaf-1, true, Monitor::_safepoint_check_never); // handles are used by
257 def(SignatureHandlerLibrary_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always);
258 def(SymbolArena_lock , PaddedMutex , leaf+2, true, Monitor::_safepoint_check_never);
259 def(ProfilePrint_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); // serial profile prin
260 def(ExceptionCache_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); // serial profile prin
261 def(OsrList_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never);
262 def(Debug1_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_never);
263 #ifndef PRODUCT
264 def(FullGCALot_lock , PaddedMutex , leaf, false, Monitor::_safepoint_check_always); // a lock to make Full
265 #endif
266 def(BeforeExit_lock , PaddedMonitor, leaf, true, Monitor::_safepoint_check_always);
267 def(PerfDataMemAlloc_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for allocating
268 def(PerfDataManager_lock , PaddedMutex , leaf, true, Monitor::_safepoint_check_always); // used for synchroniz
269
270 // CMS_modUnionTable_lock leaf
271 // CMS_bitMap_lock leaf 1
272 // CMS_freeList_lock leaf 2
273
274 def(Safepoint_lock , PaddedMonitor, safepoint, true, Monitor::_safepoint_check_sometimes); // locks SnippetCache_
275
276 def(Threads_lock , PaddedMonitor, barrier, true, Monitor::_safepoint_check_sometimes);
277 def(NonJavaThreadsList_lock , PaddedMutex, leaf, true, Monitor::_safepoint_check_never);
278
279 def(VMOperationQueue_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_sometimes); // VM_thread allowed t
280 def(VMOperationRequest_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_sometimes);
281 def(RetData_lock , PaddedMutex , nonleaf, false, Monitor::_safepoint_check_always);
282 def(Terminator_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_sometimes);
283 def(VtableStubs_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_never);
284 def(Notify_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_always);
285 def(JNIGlobalAlloc_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_never);
286 def(JNIGlobalActive_lock , PaddedMutex , nonleaf-1, true, Monitor::_safepoint_check_never);
287 def(JNIWeakAlloc_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_never);
288 def(JNIWeakActive_lock , PaddedMutex , nonleaf-1, true, Monitor::_safepoint_check_never);
289 def(JNICritical_lock , PaddedMonitor, nonleaf, true, Monitor::_safepoint_check_always); // used for JNI critic
290 def(AdapterHandlerLibrary_lock , PaddedMutex , nonleaf, true, Monitor::_safepoint_check_always);
291
292 def(Heap_lock , PaddedMonitor, nonleaf+1, false, Monitor::_safepoint_check_sometimes);
293 def(JfieldIdCreation_lock , PaddedMutex , nonleaf+1, true, Monitor::_safepoint_check_always); // jfieldID, Used in V
294 def(ResolvedMethodTable_lock , PaddedMutex , nonleaf+1, false, Monitor::_safepoint_check_always); // Used to protect Res
295
296 def(CompiledIC_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_never); // locks VtableStubs_l
297 def(CompileTaskAlloc_lock , PaddedMutex , nonleaf+2, true, Monitor::_safepoint_check_always);
298 def(CompileStatistics_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always);
299 def(DirectivesStack_lock , PaddedMutex , special, true, Monitor::_safepoint_check_never);
300 def(MultiArray_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always);
301
302 def(JvmtiThreadState_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always); // Used by JvmtiThread
303 def(Management_lock , PaddedMutex , nonleaf+2, false, Monitor::_safepoint_check_always); // used for JVM manage
304
305 def(Compile_lock , PaddedMutex , nonleaf+3, true, Monitor::_safepoint_check_sometimes);
306 def(MethodData_lock , PaddedMutex , nonleaf+3, false, Monitor::_safepoint_check_always);
307 def(TouchedMethodLog_lock , PaddedMutex , nonleaf+3, false, Monitor::_safepoint_check_always);
308
309 def(MethodCompileQueue_lock , PaddedMonitor, nonleaf+4, true, Monitor::_safepoint_check_always);
310 def(Debug2_lock , PaddedMutex , nonleaf+4, true, Monitor::_safepoint_check_never);
311 def(Debug3_lock , PaddedMutex , nonleaf+4, true, Monitor::_safepoint_check_never);
312 def(CompileThread_lock , PaddedMonitor, nonleaf+5, false, Monitor::_safepoint_check_always);
313 def(PeriodicTask_lock , PaddedMonitor, nonleaf+5, true, Monitor::_safepoint_check_sometimes);
314 def(RedefineClasses_lock , PaddedMonitor, nonleaf+5, true, Monitor::_safepoint_check_always);
315
|