const Instr instr = emit_add_instr(emit, MemSetImm);
instr->m_val = emit_local(emit, emit->gwion->type[et_int]);
stmt->idx->v->from->offset = offset;
+ const Instr idx = emit_add_instr(emit, MemSetImm);
+ idx->m_val = offset;
+ idx->m_val2 = -1;
}
CHECK_BB(emit_exp_pop_next(emit, stmt->cond));
regpop(emit, SZ_INT);
// (*(m_int*)(mem+VAL))--;
DISPATCH();
repeatidx:
- BRANCH_DISPATCH(*(m_int*)(mem+VAL2+SZ_INT) == (*(m_int*)(mem+VAL2))++);
+ BRANCH_DISPATCH(*(m_int*)(mem+VAL2+SZ_INT) == ++(*(m_int*)(mem+VAL2)));
repeat:
BRANCH_DISPATCH(!(*(m_uint*)(mem+VAL2))--);
regpushme: