Hi, while digging through some problems with BKPT exceptions on ARM, I discovered that QEMU does not update IFSR on prefetch aborts. This should be done since ARMv6 according to ARM docs. Please include.
Best Regards, Alex -- Alexander Zuepke azue...@sysgo.com SYSGO AG ~ Am Pfaffenstein 14 ~ 55270 Klein-Winternheim ~ Germany
target-arm: BKPT instructions should raise prefetch aborts with IFSR type 00010 diff against qemu 0.14.0 Signed-off-by: Alex Zuepke <azue...@sysgo.com> --- qemu-0.14.0.orig/target-arm/translate.c 2011-02-16 15:44:05.000000000 +0100 +++ qemu-0.14.0/target-arm/translate.c 2011-03-25 11:22:03.000000000 +0100 @@ -6389,6 +6389,7 @@ goto illegal_op; } /* bkpt */ + env->cp15.c5_insn = 2; gen_exception_insn(s, 4, EXCP_BKPT); break; case 0x8: /* signed multiply */ @@ -8930,6 +8931,7 @@ break; case 0xe: /* bkpt */ + env->cp15.c5_insn = 2; gen_exception_insn(s, 2, EXCP_BKPT); break;