MONO_ARCH_SAVE_REGS;
- EnterCriticalSection (metadata_section);
addr = mono_compile_method (method);
- LeaveCriticalSection (metadata_section);
return addr;
}
static gint64
mono_llmult (gint64 a, gint64 b)
{
- MONO_ARCH_SAVE_REGS;
+ /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
return a * b;
}
res += t1;
+ if (res < 0)
+ goto raise_exception;
+
if (sign < 0)
return -res;
else
{
guint64 res;
- MONO_ARCH_SAVE_REGS;
+ /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
res = a << shamt;
/*printf ("TESTL %lld << %d = %lld\n", a, shamt, res);*/
{
guint64 res;
- MONO_ARCH_SAVE_REGS;
+ /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
res = a >> shamt;
/*printf ("TESTR %lld >> %d = %lld\n", a, shamt, res);*/
{
gint64 res;
- MONO_ARCH_SAVE_REGS;
+ /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
res = a >> shamt;
/*printf ("TESTR %lld >> %d = %lld\n", a, shamt, res);*/
static guint64
mono_fconv_u8 (double v)
{
- MONO_ARCH_SAVE_REGS;
+ /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
return (guint64)v;
}
static guint32
mono_fconv_u4 (double v)
{
- MONO_ARCH_SAVE_REGS;
+ /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
return (guint32)v;
}