static void clean_acc(void) { if (acc_loaded && acc_dirty) { if (tape_step > 1) { if (acc_offset) { jit_stxi_i(acc_offset * tape_step, REG_P, REG_ACC); } else { jit_str_i(REG_P, REG_ACC); } } else { if (acc_offset) { jit_stxi_uc(acc_offset, REG_P, REG_ACC); } else { jit_str_uc(REG_P, REG_ACC); } } acc_dirty = 0; } }
void stack_push(int reg, int *sp) { jit_stxi_i (*sp, JIT_FP, reg); *sp += sizeof (int); }
static void pushr (int reg, int *sp) { jit_stxi_i (*sp, JIT_FP, reg); *sp += sizeof (int); }