+2002-02-19 Radek Doulik <rodo@ximian.com>
+
+ * ppc/tramp.c (emit_save_parameters): don't start saving 64bit values to
+ even registers
Tue Feb 19 20:19:38 CET 2002 Paolo Molaro <lupus@ximian.com>
#endif
#endif
-/* void
-fake_func (gdouble (*callme)(), stackval *retval, void *this_obj, stackval *arguments)
+/* gpointer
+fake_func (gpointer (*callme)(gpointer), stackval *retval, void *this_obj, stackval *arguments)
{
guint32 i = 0xc002becd;
*(gpointer*)retval = (gpointer)(*callme) (arguments [0].data.p, arguments [1].data.p, arguments [2].data.p);
*(gdouble*) retval = (gdouble)(*callme) (arguments [0].data.f);
+
+ return (gpointer) (*callme) (((MonoType *)arguments [0]. data.p)->data.klass);
} */
#define MIN_CACHE_LINE 8
} else {
*code_size += 16; /* 2x load from stack */
}
+ if ((*gr) && 1)
+ (*gr) ++;
(*gr) ++;
}
(*gr) ++;
break;
case MONO_TYPE_I8:
if (gr < 7) {
+ if (gr & 1)
+ gr ++;
g_warning ("check endianess");
ppc_lwz (p, ppc_r3 + gr, i*16, ARG_BASE);
gr ++;