MINT_IN_BREAK;
}
- MINT_IN_CASE(MINT_LDTHISA)
- g_error ("should not happen");
- // sp->data.p = &frame->obj;
- ++ip;
- ++sp;
- MINT_IN_BREAK;
-
#define LDARG(datamem, argtype) \
sp->data.datamem = * (argtype *)(frame->args + * (guint16 *)(ip + 1)); \
ip += 2; \
OPDEF(MINT_STINARG_VT, "stinarg.vt", 4, MintOpShortAndInt)
OPDEF(MINT_LDARGA, "ldarga", 2, MintOpUShortInt)
-OPDEF(MINT_LDTHISA, "ldthisa", 1, MintOpNoArgs)
OPDEF(MINT_LDFLD_I1, "ldfld.i1", 2, MintOpUShortInt)
OPDEF(MINT_LDFLD_U1, "ldfld.u1", 2, MintOpUShortInt)
break;
case CEE_LDARGA_S: {
/* NOTE: n includes this */
- int n = ((guint8 *)td.ip)[1];
- if (n == 0 && signature->hasthis) {
- g_error ("LDTHISA: NOPE");
- ADD_CODE(&td, MINT_LDTHISA);
- }
- else {
- ADD_CODE(&td, MINT_LDARGA);
- ADD_CODE(&td, td.rtm->arg_offsets [n]);
- }
+ int n = ((guint8 *) td.ip) [1];
+ ADD_CODE (&td, MINT_LDARGA);
+ ADD_CODE (&td, td.rtm->arg_offsets [n]);
PUSH_SIMPLE_TYPE(&td, STACK_TYPE_MP);
td.ip += 2;
break;
break;
case CEE_LDARGA: {
int n = read16 (td.ip + 1);
- if (n == 0 && signature->hasthis) {
- g_error ("LDTHISA: NOPE");
- ADD_CODE(&td, MINT_LDTHISA);
- }
- else {
- ADD_CODE(&td, MINT_LDARGA);
- ADD_CODE(&td, td.rtm->arg_offsets [n]); /* FIX for large offsets */
- }
+ ADD_CODE (&td, MINT_LDARGA);
+ ADD_CODE (&td, td.rtm->arg_offsets [n]); /* FIX for large offsets */
PUSH_SIMPLE_TYPE(&td, STACK_TYPE_MP);
td.ip += 3;
break;