return 0;
}
- [Category ("!INTERPRETER")]
public static int test_3_checked_cast_un () {
ulong i = 0x8000000034000000;
long j;
sp [-1].data.l = sp [-1].data.i;
++ip;
MINT_IN_BREAK;
+ MINT_IN_CASE(MINT_CONV_OVF_I8_U8)
+ if ((guint64) sp [-1].data.l > MYGINT64_MAX)
+ THROW_EX (mono_get_exception_overflow (), ip);
+ ++ip;
+ MINT_IN_BREAK;
MINT_IN_CASE(MINT_CONV_OVF_U8_R8)
MINT_IN_CASE(MINT_CONV_OVF_I8_UN_R8)
- if (sp [-1].data.f < 0 || sp [-1].data.f > 9223372036854775807LL)
+ if (sp [-1].data.f < 0 || sp [-1].data.f > MYGINT64_MAX)
THROW_EX (mono_get_exception_overflow (), ip);
sp [-1].data.l = (guint64)sp [-1].data.f;
++ip;
OPDEF(MINT_CONV_OVF_U4_I8, "conv.ovf.u4.i8", 1, MintOpNoArgs)
OPDEF(MINT_CONV_OVF_U4_R8, "conv.ovf.u4.r8", 1, MintOpNoArgs)
+OPDEF(MINT_CONV_OVF_I8_U8, "conv.ovf.i8.u8", 1, MintOpNoArgs)
OPDEF(MINT_CONV_OVF_I8_R8, "conv.ovf.i8.r8", 1, MintOpNoArgs)
OPDEF(MINT_CONV_OVF_I8_UN_R8, "conv.ovf.i8.un.r8", 1, MintOpNoArgs)
ADD_CODE(&td, MINT_CONV_OVF_I8_UN_R8);
break;
case STACK_TYPE_I8:
+ if (*td.ip == CEE_CONV_OVF_I8_UN)
+ ADD_CODE (&td, MINT_CONV_OVF_I8_U8);
break;
case STACK_TYPE_I4:
ADD_CODE(&td, MINT_CONV_I8_U4);