MonoObject *ephemeron_tombstone;
/* new MonoType [0] */
MonoArray *empty_types;
+ MonoString *empty_string;
/*
* The fields between FIRST_GC_TRACKED and LAST_GC_TRACKED are roots, but
* not object references.
/* hashtables for Reflection handles */
MonoGHashTable *type_hash;
MonoGHashTable *refobject_hash;
- /* a GC-tracked array to keep references to the static fields of types */
+ /*
+ * A GC-tracked array to keep references to the static fields of types.
+ * See note [Domain Static Data Array].
+ */
gpointer *static_data_array;
/* maps class -> type initialization exception object */
MonoGHashTable *type_init_exception_hash;
/* Needed by Thread:GetDomainID() */
gint32 domain_id;
gint32 shadow_serial;
- unsigned char inet_family_hint; // used in socket-io.c as a cache
GSList *domain_assemblies;
MonoAssembly *entry_assembly;
char *friendly_name;
GHashTable *method_rgctx_hash;
GHashTable *generic_virtual_cases;
- MonoThunkFreeList **thunk_free_lists;
-
- GHashTable *generic_virtual_thunks;
/* Information maintained by the JIT engine */
gpointer runtime_info;
-
- /*thread pool jobs, used to coordinate shutdown.*/
- volatile int threadpool_jobs;
- HANDLE cleanup_semaphore;
/* Contains the compiled runtime invoke wrapper used by finalizers */
gpointer finalize_runtime_invoke;
typedef MonoDomain* (*MonoLoadFunc) (const char *filename, const char *runtime_version);
-void mono_domain_lock (MonoDomain *domain);
-void mono_domain_unlock (MonoDomain *domain);
+void mono_domain_lock (MonoDomain *domain) MONO_LLVM_INTERNAL;
+void mono_domain_unlock (MonoDomain *domain) MONO_LLVM_INTERNAL;
void
mono_install_runtime_load (MonoLoadFunc func);
void
mono_context_init_checked (MonoDomain *domain, MonoError *error);
+gboolean
+mono_assembly_has_reference_assembly_attribute (MonoAssembly *assembly, MonoError *error);
+
+
#endif /* __MONO_METADATA_DOMAIN_INTERNALS_H__ */