MonoJitInfoTableChunk *chunks [MONO_ZERO_LEN_ARRAY];
};
+#define MONO_SIZEOF_JIT_INFO_TABLE (sizeof (struct _MonoJitInfoTable) - MONO_ZERO_LEN_ARRAY * SIZEOF_VOID_P)
+
typedef GArray MonoAotModuleInfoTable;
typedef struct {
gboolean cas_method_permitonly:1;
gboolean has_generic_jit_info:1;
gboolean from_aot:1;
+ gboolean from_llvm:1;
+#ifdef HAVE_SGEN_GC
+ /* FIXME: Embed this after the structure later */
+ gpointer gc_info;
+#endif
MonoJitExceptionInfo clauses [MONO_ZERO_LEN_ARRAY];
/* There is an optional MonoGenericJitInfo after the clauses */
};
+#define MONO_SIZEOF_JIT_INFO (offsetof (struct _MonoJitInfo, clauses))
+
struct _MonoAppContext {
MonoObject obj;
gint32 domain_id;
* if the hashtable contains a GC visible reference to them.
*/
GHashTable *finalizable_objects_hash;
+#ifndef HAVE_SGEN_GC
+ /* Maps MonoObjects to a GSList of WeakTrackResurrection GCHandles pointing to them */
+ GHashTable *track_resurrection_objects_hash;
+ /* Maps WeakTrackResurrection GCHandles to the MonoObjects they point to */
+ GHashTable *track_resurrection_handles_hash;
+#endif
+ /* Protects the three hashes above */
CRITICAL_SECTION finalizable_objects_hash_lock;
/* Used when accessing 'domain_assemblies' */
CRITICAL_SECTION assemblies_lock;
void
mono_domain_code_foreach (MonoDomain *domain, MonoCodeManagerFunc func, void *user_data) MONO_INTERNAL;
+void
+mono_domain_set_internal_with_options (MonoDomain *domain, gboolean migrate_exception) MONO_INTERNAL;
+
/*
* Installs a new function which is used to return a MonoJitInfo for a method inside
* an AOT module.
int mono_framework_version (void) MONO_INTERNAL;
+void mono_reflection_cleanup_domain (MonoDomain *domain) MONO_INTERNAL;
+
#endif /* __MONO_METADATA_DOMAIN_INTERNALS_H__ */