#include <mono/utils/mono-stack-unwinding.h>
#include <mono/utils/mono-linked-list-set.h>
#include <mono/utils/mono-tls.h>
-#include <mono/utils/mono-threads-coop.h>
-#include <mono/utils/mono-threads-api.h>
#include <mono/utils/mono-coop-semaphore.h>
#include <mono/io-layer/io-layer.h>
MonoThreadInfoInterruptToken *interrupt_token;
- /* MonoHandleArena for coop handles */
- gpointer handle_arena;
+ /* HandleStack for coop handles */
+ gpointer handle_stack;
+
+ /* Stack mark for targets that explicitly require one */
+ gpointer stack_mark;
} MonoThreadInfo;
typedef struct {
MonoThreadUnwindState* mono_thread_info_get_suspend_state (THREAD_INFO_TYPE *info);
gpointer
-mono_threads_enter_gc_unsafe_region_cookie (THREAD_INFO_TYPE *info);
+mono_threads_enter_gc_unsafe_region_cookie (void);
void mono_thread_info_wait_for_resume (THREAD_INFO_TYPE *info);
void mono_threads_begin_global_suspend (void);
void mono_threads_end_global_suspend (void);
+gboolean
+mono_thread_info_is_current (THREAD_INFO_TYPE *info);
+
#endif /* __MONO_THREADS_H__ */