Revision 20dcee94 target-m68k/translate.c
b/target-m68k/translate.c | ||
---|---|---|
1345 | 1345 |
gen_op_logic_cc(gen_im32(val & 0xf)); |
1346 | 1346 |
gen_op_update_xflag_tst(gen_im32((val & 0x10) >> 4)); |
1347 | 1347 |
if (!ccr_only) { |
1348 |
gen_op_mov32(QREG_SR, gen_im32(val & 0xff00));
|
|
1348 |
gen_op_set_sr(gen_im32(val & 0xff00));
|
|
1349 | 1349 |
} |
1350 | 1350 |
} |
1351 | 1351 |
|
... | ... | |
1365 | 1365 |
gen_op_and32(src1, src1, gen_im32(1)); |
1366 | 1366 |
gen_op_update_xflag_tst(src1); |
1367 | 1367 |
if (!ccr_only) { |
1368 |
gen_op_and32(QREG_SR, reg, gen_im32(0xff00));
|
|
1368 |
gen_op_set_sr(reg);
|
|
1369 | 1369 |
} |
1370 | 1370 |
} |
1371 | 1371 |
else if ((insn & 0x3f) == 0x3c) |
... | ... | |
2797 | 2797 |
INSN(trap, 4e40, fff0, CF_ISA_A); |
2798 | 2798 |
INSN(link, 4e50, fff8, CF_ISA_A); |
2799 | 2799 |
INSN(unlk, 4e58, fff8, CF_ISA_A); |
2800 |
INSN(move_to_usp, 4e60, fff8, CF_ISA_B);
|
|
2801 |
INSN(move_from_usp, 4e68, fff8, CF_ISA_B);
|
|
2800 |
INSN(move_to_usp, 4e60, fff8, USP);
|
|
2801 |
INSN(move_from_usp, 4e68, fff8, USP);
|
|
2802 | 2802 |
INSN(nop, 4e71, ffff, CF_ISA_A); |
2803 | 2803 |
INSN(stop, 4e72, ffff, CF_ISA_A); |
2804 | 2804 |
INSN(rte, 4e73, ffff, CF_ISA_A); |
... | ... | |
3261 | 3261 |
#if !defined (CONFIG_USER_ONLY) |
3262 | 3262 |
env->sr = 0x2700; |
3263 | 3263 |
#endif |
3264 |
m68k_switch_sp(env); |
|
3264 | 3265 |
/* ??? FP regs should be initialized to NaN. */ |
3265 | 3266 |
env->cc_op = CC_OP_FLAGS; |
3266 | 3267 |
/* TODO: We should set PC from the interrupt vector. */ |
Also available in: Unified diff