| 1701 | } |
| 1702 | |
| 1703 | void asCByteCode::Alloc(asEBCInstr instr, void *objID, int funcID, int pop) |
| 1704 | { |
| 1705 | if( AddInstruction() < 0 ) |
| 1706 | return; |
| 1707 | |
| 1708 | last->op = instr; |
| 1709 | last->size = asBCTypeSize[asBCInfo[instr].type]; |
| 1710 | last->stackInc = -pop; // BC_ALLOC |
| 1711 | |
| 1712 | asASSERT(asBCInfo[instr].type == asBCTYPE_PTR_DW_ARG); |
| 1713 | *ARG_PTR(last->arg) = (asPWORD)objID; |
| 1714 | *((int*)(ARG_DW(last->arg)+AS_PTR_SIZE)) = funcID; |
| 1715 | |
| 1716 | // Add a JitEntry instruction after function calls so that JIT's can resume execution |
| 1717 | InstrPTR(asBC_JitEntry, 0); |
| 1718 | } |
| 1719 | |
| 1720 | void asCByteCode::Ret(int pop) |
| 1721 | { |
no outgoing calls
no test coverage detected