2005-03-20 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mono / mini / jit-icalls.c
index f7a9ff91ce19c6830988b39f6814f69e4f875ecd..d1bb391250e2d5c21d81af283d126b55bd8e0ab3 100644 (file)
@@ -43,35 +43,14 @@ mono_ldvirtfn (MonoObject *obj, MonoMethod *method)
 {
        MONO_ARCH_SAVE_REGS;
 
+       if (obj == NULL)
+               mono_raise_exception (mono_get_exception_null_reference ());
+
        method = mono_object_get_virtual_method (obj, method);
 
        return mono_ldftn (method);
 }
 
-static void
-helper_initobj (void *addr, int size)
-{
-       MONO_ARCH_SAVE_REGS;
-
-       memset (addr, 0, size);
-}
-
-static void
-helper_memcpy (void *addr, void *src, int size)
-{
-       MONO_ARCH_SAVE_REGS;
-
-       memcpy (addr, src, size);
-}
-
-static void
-helper_memset (void *addr, int val, int size)
-{
-       MONO_ARCH_SAVE_REGS;
-
-       memset (addr, val, size);
-}
-
 static void
 helper_stelem_ref (MonoArray *array, int index, MonoObject *val)
 {
@@ -95,6 +74,8 @@ helper_stelem_ref_check (MonoArray *array, MonoObject *val)
                mono_raise_exception (mono_get_exception_array_type_mismatch ());
 }
 
+#ifndef MONO_ARCH_NO_EMULATE_LONG_MUL_OPTS
+
 static gint64 
 mono_llmult (gint64 a, gint64 b)
 {
@@ -134,7 +115,6 @@ mono_llmult_ovf_un (guint64 a, guint64 b)
        return 0;
 }
 
-
 static guint64  
 mono_llmult_ovf (gint64 a, gint64 b) 
 {
@@ -298,6 +278,8 @@ mono_llrem_un (guint64 a, guint64 b)
        return a % b;
 }
 
+#endif
+
 #ifndef MONO_ARCH_NO_EMULATE_LONG_SHIFT_OPS
 
 static guint64