[runtime] Introduce the icall lock to be used when looking up icall related information.
[mono.git] / mono / metadata / lock-tracer.h
index 40beac748e8c30c76f4182a53dd7c5c2e826847e..ac9599ecbab35d7b9a33d010293f1a008db83282 100644 (file)
@@ -15,6 +15,7 @@ typedef enum {
        DomainLock,
        DomainAssembliesLock,
        DomainJitCodeHashLock,
+       IcallLock
 } RuntimeLocks;
 
 #ifdef LOCK_TRACER
@@ -43,6 +44,15 @@ void mono_locks_lock_released (RuntimeLocks kind, gpointer lock) MONO_INTERNAL;
        LeaveCriticalSection (LOCK); \
 } while (0)
 
+#define mono_locks_mutex_acquire(LOCK, NAME) do { \
+       mono_mutex_lock (LOCK); \
+       mono_locks_lock_acquired (NAME, LOCK); \
+} while (0)
+
+#define mono_locks_mutex_release(LOCK, NAME) do { \
+       mono_locks_lock_released (NAME, LOCK); \
+       mono_mutex_unlock (LOCK); \
+} while (0)
 G_END_DECLS
 
 #endif /* __MONO_METADATA_LOCK_TRACER_H__ */