added op.call

--HG--
extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%40105
This commit is contained in:
David Anderson 2006-10-05 01:03:54 +00:00
parent ea6c73dcb3
commit c6f60dbd6c
3 changed files with 14 additions and 1 deletions

View File

@ -1068,6 +1068,14 @@ inline void WriteOp_Retn(JitWriter *jit)
IA32_Jump_Reg(jit, AMX_REG_TMP);
}
inline void WriteOp_Call(JitWriter *jit)
{
cell_t offs = jit->read_cell();
jitoffs_t jmp = IA32_Call_Imm32(jit, 0);
IA32_Write_Jump32(jit, jmp, RelocLookup(jit, offs, false));
}
inline void WriteOp_Bounds(JitWriter *jit)
{
Write_BoundsCheck(jit);

View File

@ -107,7 +107,7 @@ typedef enum
OP_PROC, //DONE
OP_RET, // !GEN
OP_RETN, //DONE
OP_CALL,
OP_CALL, //DONE
OP_CALL_PRI, // !GEN
OP_JUMP, //DONE
OP_JREL, // !GEN

View File

@ -628,6 +628,11 @@
WriteOp_Casetbl(jit);
break;
}
case OP_CALL:
{
WriteOp_Call(jit);
break;
}
#if defined USE_UNGEN_OPCODES
#include "ungen_opcode_switch.inc"
#endif