Lines Matching refs:pc
123 * execute program at pc
127 execute(Cx_t* cx, Cxexpr_t* expr, register Cxinstruction_t* pc, void* data, Cxoperand_t* rv, Cxdisc_t* disc)
132 Cxinstruction_t* pe = pc;
141 r.type = pc->type;
145 cxcodetrace(cx, "eval", pc, pc - pe + 1, expr->stack, sp);
146 if ((i = (*pc->callout)(cx, pc, &r, sp-1, sp, data, disc)) < 0)
153 sp += pc->pp;
157 if (!so->refs && (f = cxcallout(cx, CX_DEL, so->type, cx->state->type_void, disc)) && (*f)(cx, pc, &r, NiL, so, data, disc))
159 pc += cx->jump;
161 if (cx->returnf && pc->op == CX_END && (pc-1)->op != CX_SET)
163 (*cx->returnf)(cx, pc, &r, sp-1, sp, data, disc);
166 (*f)(cx, pc, &r, NiL, sp, data, disc);