X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmetadata%2Fmetadata-internals.h;h=8e68399cfa43daa517bfc98e1c53b430182eaf52;hb=377b9f68ccf3c95cd37539793f87f1e9f9681022;hp=219276d2d7b268d399347a09110eed97c9090fcd;hpb=48992d4b3f8b568be17180372160d2f3e03b8ccb;p=mono.git diff --git a/mono/metadata/metadata-internals.h b/mono/metadata/metadata-internals.h index 219276d2d7b..8e68399cfa4 100644 --- a/mono/metadata/metadata-internals.h +++ b/mono/metadata/metadata-internals.h @@ -159,6 +159,9 @@ struct _MonoImage { /* Whenever this image contains uncompressed metadata */ guint8 uncompressed_metadata : 1; + /* Whenever this image contains metadata only without PE data */ + guint8 metadata_only : 1; + guint8 checked_module_cctor : 1; guint8 has_module_cctor : 1; @@ -275,6 +278,8 @@ struct _MonoImage { GHashTable *managed_wrapper_cache; GHashTable *native_wrapper_cache; GHashTable *native_wrapper_aot_cache; + GHashTable *native_wrapper_check_cache; + GHashTable *native_wrapper_aot_check_cache; GHashTable *native_func_wrapper_aot_cache; GHashTable *remoting_invoke_cache; GHashTable *synchronized_cache; @@ -331,6 +336,8 @@ struct _MonoImage { MonoClass **mvar_cache_fast; GHashTable *var_cache_slow; GHashTable *mvar_cache_slow; + GHashTable *var_cache_constrained; + GHashTable *mvar_cache_constrained; /* Maps malloc-ed char* pinvoke scope -> MonoDl* */ GHashTable *pinvoke_scopes; @@ -339,7 +346,9 @@ struct _MonoImage { GHashTable *pinvoke_scope_filenames; /* Indexed by MonoGenericParam pointers */ - GHashTable *gsharedvt_types; + GHashTable **gshared_types; + /* The length of the above array */ + int gshared_types_len; /* * No other runtime locks must be taken while holding this lock. @@ -662,11 +671,6 @@ mono_metadata_parse_type_full (MonoImage *image, const char *ptr, const char **rptr); -MonoMethodSignature * -mono_metadata_parse_signature_full (MonoImage *image, - MonoGenericContainer *generic_container, - guint32 token); - MONO_API MonoMethodSignature * mono_metadata_parse_method_signature_full (MonoImage *image, MonoGenericContainer *generic_container, @@ -711,6 +715,12 @@ mono_metadata_lookup_generic_class (MonoClass *gclass, MonoGenericInst * mono_metadata_inflate_generic_inst (MonoGenericInst *ginst, MonoGenericContext *context, MonoError *error); +guint +mono_metadata_generic_param_hash (MonoGenericParam *p); + +gboolean +mono_metadata_generic_param_equal (MonoGenericParam *p1, MonoGenericParam *p2); + void mono_dynamic_stream_reset (MonoDynamicStream* stream); void mono_assembly_addref (MonoAssembly *assembly); void mono_assembly_load_friends (MonoAssembly* ass); @@ -790,6 +800,8 @@ void mono_image_load_names (MonoImage *image); MonoImage *mono_image_open_raw (const char *fname, MonoImageOpenStatus *status); +MonoImage *mono_image_open_metadata_only (const char *fname, MonoImageOpenStatus *status); + MonoException *mono_get_exception_field_access_msg (const char *msg); MonoException *mono_get_exception_method_access_msg (const char *msg); @@ -811,5 +823,8 @@ mono_method_get_signature_checked (MonoMethod *method, MonoImage *image, guint32 MonoMethod * mono_get_method_checked (MonoImage *image, guint32 token, MonoClass *klass, MonoGenericContext *context, MonoError *error); +guint32 +mono_metadata_localscope_from_methoddef (MonoImage *meta, guint32 index); + #endif /* __MONO_METADATA_INTERNALS_H__ */