diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-02-21 14:11:27 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-02-21 14:11:27 +0000 |
commit | 297d8e6227ff1186857b17b1890fc94c637733da (patch) | |
tree | 2cf64660349a174a36ecd64ac8fa66f328e15b34 /target-ppc/translate.c | |
parent | 004bc62c288c707dcd31189149b01c8624c49ee3 (diff) |
Fix check for lswi (Jocelyn Mayer)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@628 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-ppc/translate.c')
-rw-r--r-- | target-ppc/translate.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/target-ppc/translate.c b/target-ppc/translate.c index 1b16fd5410..f6df06b5bf 100644 --- a/target-ppc/translate.c +++ b/target-ppc/translate.c @@ -1229,10 +1229,10 @@ GEN_HANDLER(lswi, 0x1F, 0x15, 0x12, 0x00000001, PPC_INTEGER) if (nb == 0) nb = 32; nr = nb / 4; - if (((start + nr) > 32 && start <= ra && (start + nr - 32) >= ra) || - ((start + nr) <= 32 && start <= ra && (start + nr) >= ra)) { + if (((start + nr) > 32 && start <= ra && (start + nr - 32) > ra) || + ((start + nr) <= 32 && start <= ra && (start + nr) > ra)) { RET_EXCP(EXCP_PROGRAM, EXCP_INVAL | EXCP_INVAL_LSWX); - } + } if (ra == 0) { gen_op_set_T0(0); } else { |