diff --git a/source/m3_compile.c b/source/m3_compile.c index 95b0113..d8987a1 100644 --- a/source/m3_compile.c +++ b/source/m3_compile.c @@ -2095,6 +2095,7 @@ M3Result Compile_Convert (IM3Compilation o, m3opcode_t i_opcode) { M3Result result = m3Err_none; +_try { IM3OpInfo opInfo = GetOpInfo (i_opcode); _throwif (m3Err_unknownOpcode, not opInfo); @@ -2111,6 +2112,7 @@ _ (PushAllocatedSlotAndEmit (o, opInfo->type)) else _ (PushRegister (o, opInfo->type)) +} _catch: return result; } diff --git a/source/m3_exec.h b/source/m3_exec.h index ed14fce..1ebeead 100644 --- a/source/m3_exec.h +++ b/source/m3_exec.h @@ -781,8 +781,7 @@ d_m3Op (Entry) #if d_m3SkipStackCheck if (true) #else - // TODO: check this - if (LIKELY ((void *) ((m3slot_t *) _sp + function->maxStackSlots) < _mem->maxStack)) + if (LIKELY ((void *) (_sp + function->maxStackSlots) < _mem->maxStack)) #endif { #if defined(DEBUG)