diff options
author | edgar_igl | 2009-01-07 13:35:08 +0100 |
---|---|---|
committer | edgar_igl | 2009-01-07 13:35:08 +0100 |
commit | 213fb478f80a493f5f25b45d7a5763c8d81ca140 (patch) | |
tree | 2fed6b814a162e31d0f53aeade1842e28fa7742b /target-cris | |
parent | CRIS: Move operations can be optimized as arithmetic ones for cc evaluation. (diff) | |
download | qemu-213fb478f80a493f5f25b45d7a5763c8d81ca140.tar.gz qemu-213fb478f80a493f5f25b45d7a5763c8d81ca140.tar.xz qemu-213fb478f80a493f5f25b45d7a5763c8d81ca140.zip |
CRIS: NMI wakes up the core.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6200 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-cris')
-rw-r--r-- | target-cris/translate.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/target-cris/translate.c b/target-cris/translate.c index ab83b66451..1dd880f4c5 100644 --- a/target-cris/translate.c +++ b/target-cris/translate.c @@ -2979,8 +2979,12 @@ static unsigned int dec_rfe_etc(DisasContext *dc) { cris_cc_mask(dc, 0); - if (dc->op2 == 15) /* ignore halt. */ + if (dc->op2 == 15) { + t_gen_mov_env_TN(halted, tcg_const_tl(1)); + tcg_gen_movi_tl(env_pc, dc->pc + 2); + t_gen_raise_exception(EXCP_HLT); return 2; + } switch (dc->op2 & 7) { case 2: |