Signed-off-by: Lennert Buytenhek <buyt...@marvell.com> -- The LE check is obviously buggy (as easily triggered during some testing), but I didn't audit the rest of the cases.
diff --git a/src/target/arm_simulator.c b/src/target/arm_simulator.c index 7c610a5..93fb3dd 100644 --- a/src/target/arm_simulator.c +++ b/src/target/arm_simulator.c @@ -243,9 +243,9 @@ int pass_condition(uint32_t cpsr, uint32_t opcode) else return 0; case 0xd: /* LE */ - if ((cpsr & 0x40000000) && - (((cpsr & 0x80000000) && !(cpsr & 0x10000000)) - || (!(cpsr & 0x80000000) && (cpsr & 0x10000000)))) + if ((cpsr & 0x40000000) || + ((cpsr & 0x80000000) && !(cpsr & 0x10000000)) + || (!(cpsr & 0x80000000) && (cpsr & 0x10000000))) return 1; else return 0; _______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development