Merge pull request #451 from madewokherd/wrappertrace
[mono.git] / mono / mini / jit-icalls.h
index dffadcacece4a2dacf8ae8f2e2e91ef93ef87054..16679d36ad094a665a8160f442d00db731fa7c35 100644 (file)
@@ -7,10 +7,10 @@
 
 void* mono_ldftn (MonoMethod *method) MONO_INTERNAL;
 
-void* mono_ldftn_nosync (MonoMethod *method) MONO_INTERNAL;
-
 void* mono_ldvirtfn (MonoObject *obj, MonoMethod *method) MONO_INTERNAL;
 
+void* mono_ldvirtfn_gshared (MonoObject *obj, MonoMethod *method) MONO_INTERNAL;
+
 void mono_helper_stelem_ref_check (MonoArray *array, MonoObject *val) MONO_INTERNAL;
 
 gint64 mono_llmult (gint64 a, gint64 b) MONO_INTERNAL;
@@ -49,14 +49,20 @@ guint64 mono_lshr_un (guint64 a, gint32 shamt) MONO_INTERNAL;
 
 gint64 mono_lshr (gint64 a, gint32 shamt) MONO_INTERNAL;
 
-gpointer ves_array_element_address (MonoArray *this, ...) MONO_INTERNAL;
-
 MonoArray *mono_array_new_va (MonoMethod *cm, ...) MONO_INTERNAL;
 
+MonoArray *mono_array_new_1 (MonoMethod *cm, guint32 length) MONO_INTERNAL;
+
+MonoArray *mono_array_new_2 (MonoMethod *cm, guint32 length1, guint32 length2) MONO_INTERNAL;
+
+MonoArray *mono_array_new_3 (MonoMethod *cm, guint32 length1, guint32 length2, guint32 length3) MONO_INTERNAL;
+
 gpointer mono_class_static_field_address (MonoDomain *domain, MonoClassField *field) MONO_INTERNAL;
 
 gpointer mono_ldtoken_wrapper (MonoImage *image, int token, MonoGenericContext *context) MONO_INTERNAL;
 
+gpointer mono_ldtoken_wrapper_generic_shared (MonoImage *image, int token, MonoMethod *method) MONO_INTERNAL;
+
 guint64 mono_fconv_u8 (double v) MONO_INTERNAL;
 
 gint64 mono_fconv_i8 (double v) MONO_INTERNAL;
@@ -69,13 +75,21 @@ guint64 mono_fconv_ovf_u8 (double v) MONO_INTERNAL;
 
 double mono_lconv_to_r8 (gint64 a) MONO_INTERNAL;
 
+double mono_conv_to_r8 (gint32 a) MONO_INTERNAL;
+
+double mono_conv_to_r4 (gint32 a) MONO_INTERNAL;
+
 float mono_lconv_to_r4 (gint64 a) MONO_INTERNAL;
 
 double mono_conv_to_r8_un (guint32 a) MONO_INTERNAL;
 
 double mono_lconv_to_r8_un (guint64 a) MONO_INTERNAL;
 
-gpointer mono_helper_compile_generic_method (MonoObject *obj, MonoMethod *method, MonoGenericContext *context, gpointer *this_arg) MONO_INTERNAL;
+#if defined(__native_client_codegen__) || defined(__native_client__)
+double mono_fmod(double a, double b) MONO_INTERNAL;
+#endif
+
+gpointer mono_helper_compile_generic_method (MonoObject *obj, MonoMethod *method, gpointer *this_arg) MONO_INTERNAL;
 
 MonoString *mono_helper_ldstr (MonoImage *image, guint32 idx) MONO_INTERNAL;
 
@@ -123,5 +137,41 @@ gboolean mono_fcmp_le_un (double a, double b) MONO_INTERNAL;
 
 gboolean mono_fcmp_lt_un (double a, double b) MONO_INTERNAL;
 
+gboolean mono_fceq (double a, double b) MONO_INTERNAL;
+
+gboolean mono_fcgt (double a, double b) MONO_INTERNAL;
+
+gboolean mono_fcgt_un (double a, double b) MONO_INTERNAL;
+
+gboolean mono_fclt (double a, double b) MONO_INTERNAL;
+
+gboolean mono_fclt_un (double a, double b) MONO_INTERNAL;
+
+gboolean mono_isfinite (double a) MONO_INTERNAL;
+
+double   mono_fload_r4 (float *ptr) MONO_INTERNAL;
+
+void     mono_fstore_r4 (double val, float *ptr) MONO_INTERNAL;
+
+guint32  mono_fload_r4_arg (double val) MONO_INTERNAL;
+
+void     mono_break (void) MONO_INTERNAL;
+
+MonoException *mono_create_corlib_exception_0 (guint32 token) MONO_INTERNAL;
+
+MonoException *mono_create_corlib_exception_1 (guint32 token, MonoString *arg) MONO_INTERNAL;
+
+MonoException *mono_create_corlib_exception_2 (guint32 token, MonoString *arg1, MonoString *arg2) MONO_INTERNAL;
+
+MonoObject* mono_object_castclass (MonoObject *obj, MonoClass *klass) MONO_INTERNAL;
+
+gpointer mono_get_native_calli_wrapper (MonoImage *image, MonoMethodSignature *sig, gpointer func) MONO_INTERNAL;
+
+MonoObject*
+mono_object_isinst_with_cache (MonoObject *obj, MonoClass *klass, gpointer *cache);
+
+MonoObject*
+mono_object_castclass_with_cache (MonoObject *obj, MonoClass *klass, gpointer *cache);
+
 #endif /* __MONO_JIT_ICALLS_H__ */