#include <mono/metadata/gc-internals.h>
#include <mono/metadata/coree.h>
#include <mono/metadata/attach.h>
+#include <mono/metadata/w32process.h>
#include "mono/utils/mono-counters.h"
#include "mono/utils/mono-hwcap.h"
#include "mono/utils/mono-logger-internals.h"
-#include "mono/utils/w32handle.h"
+#include "mono/metadata/w32handle.h"
#include "mini.h"
#include "jit.h"
(method->flags & METHOD_ATTRIBUTE_ABSTRACT))
continue;
- if (method->klass->generic_container)
+ if (mono_class_is_gtd (method->klass))
continue;
sig = mono_method_signature (method);
if (!sig) {
} else if (strcmp (argv [i], "--verify-all") == 0) {
mono_verifier_enable_verify_all ();
} else if (strcmp (argv [i], "--full-aot") == 0) {
- mono_aot_only = TRUE;
+ mono_jit_set_aot_mode (MONO_AOT_MODE_FULL);
} else if (strcmp (argv [i], "--llvmonly") == 0) {
- mono_aot_only = TRUE;
- mono_llvm_only = TRUE;
+ mono_jit_set_aot_mode (MONO_AOT_MODE_LLVMONLY);
} else if (strcmp (argv [i], "--hybrid-aot") == 0) {
+ mono_jit_set_aot_mode (MONO_AOT_MODE_HYBRID);
} else if (strcmp (argv [i], "--print-vtable") == 0) {
mono_print_vtable = TRUE;
} else if (strcmp (argv [i], "--stats") == 0) {
{
char *runtime_path;
- runtime_path = wapi_process_get_path (getpid ());
+ runtime_path = mono_w32process_get_path (getpid ());
if (runtime_path) {
- wapi_process_set_cli_launcher (runtime_path);
+ mono_w32process_set_cli_launcher (runtime_path);
g_free (runtime_path);
}
}
/* Set rootdir before loading config */
mono_set_rootdir ();
- /*
- * We only set the native name of the thread since MS.NET leaves the
- * managed thread name for the main thread as null.
- */
- mono_native_thread_set_name (mono_native_thread_id_get (), "Main");
-
if (enable_profile) {
mono_profiler_load (profile_options);
mono_profiler_thread_name (MONO_NATIVE_THREAD_ID_TO_UINT (mono_native_thread_id_get ()), "Main");
void
mono_jit_set_aot_mode (MonoAotMode mode)
{
+ /* we don't want to set mono_aot_mode twice */
+ g_assert (mono_aot_mode == MONO_AOT_MODE_NONE);
mono_aot_mode = mode;
+
if (mono_aot_mode == MONO_AOT_MODE_LLVMONLY) {
mono_aot_only = TRUE;
mono_llvm_only = TRUE;
}
+ if (mono_aot_mode == MONO_AOT_MODE_FULL) {
+ mono_aot_only = TRUE;
+ }
+ if (mono_aot_mode == MONO_AOT_MODE_HYBRID) {
+ mono_set_generic_sharing_vt_supported (TRUE);
+ mono_set_partial_sharing_supported (TRUE);
+ }
}
/**