[runtime] Remove duplicate merp invoke line (#12036)
[mono-project.git] / mono / native / mono-native-platform.c
blob108b144ba2ae53a2b92cdacc59d048279bc59b95
1 #include <config.h>
2 #include <glib.h>
3 #include "mono/utils/mono-threads-api.h"
4 #include "mono/utils/atomic.h"
5 #include "mono/metadata/loader-internals.h"
6 #include "mono/metadata/icall-internals.h"
8 #include "mono-native-platform.h"
10 extern MonoNativePlatformType mono_native_platform_type;
11 volatile static gboolean module_initialized;
12 volatile static gint32 module_counter;
14 int32_t
15 mono_native_get_platform_type (void)
17 return mono_native_platform_type;
20 static int32_t
21 ves_icall_MonoNativePlatform_IncrementInternalCounter (void)
23 return mono_atomic_inc_i32 (&module_counter);
26 int32_t
27 mono_native_is_initialized (void)
29 return module_initialized;
32 void
33 mono_native_initialize (void)
35 if (mono_atomic_cas_i32 (&module_initialized, TRUE, FALSE) != FALSE)
36 return;
38 mono_add_internal_call_with_flags ("Mono.MonoNativePlatform::IncrementInternalCounter", ves_icall_MonoNativePlatform_IncrementInternalCounter, TRUE);