rendered paste bodystatic void CVMCoder_ReturnInsn(ILCoder *coder, ILEngineType engineType,
ILType *returnType)
{
ILJITCoder *jitCoder = _ILCoderToILJITCoder(coder);
switch(engineType)
{
case ILEngineType_Invalid:
{
jit_insn_return(jitCoder->function, 0);
}
break;
case ILEngineType_M:
case ILEngineType_O:
case ILEngineType_T:
case ILEngineType_I4:
#ifdef IL_NATIVE_INT32
case ILEngineType_I:
#endif
{
jit_insn_return(jitCoder->function,
jitCoder->jitStack[jitCoder->stackTop]);
JITC_ADJUST(jitCoder, -1);
}
break;
case ILEngineType_I8:
#ifdef IL_NATIVE_INT64
case ILEngineType_I:
#endif
{
jit_insn_return(jitCoder->function,
jitCoder->jitStack[jitCoder->stackTop]);
JITC_ADJUST(jitCoder, -1);
}
break;
case ILEngineType_F:
{
jit_insn_return(jitCoder->function,
jitCoder->jitStack[jitCoder->stackTop]);
JITC_ADJUST(jitCoder, -1);
}
break;
case ILEngineType_MV:
{
jit_insn_return(jitCoder->function,
jitCoder->jitStack[jitCoder->stackTop]);
JITC_ADJUST(jitCoder, -1);
}
break;
case ILEngineType_TypedRef:
{
jit_insn_return_ptr(jitCoder->function,
jitCoder->jitStack[jitCoder->stackTop]);
JITC_ADJUST(jitCoder, -1);
}
break;
}
}