This is an automated email from Gerrit. Spencer Oliver ([email protected]) just uploaded a new patch set to Gerrit, which you can find at http://openocd.zylin.com/965
-- gerrit commit b0b5ef6f9cd00db82a8f56d005421baef8ad7f1c Author: Spencer Oliver <[email protected]> Date: Wed Oct 31 14:02:38 2012 +0000 cortex: autostep correctly handle user breakpoint If we halt due to a breakpoint make sure that we do not remove it during a step, only remove breakpoints we have created. Change-Id: Ia275977ea11f43614075ede47b589c6d23d87c96 Signed-off-by: Spencer Oliver <[email protected]> diff --git a/src/target/cortex_m.c b/src/target/cortex_m.c index fc13a3f..ef4874d 100644 --- a/src/target/cortex_m.c +++ b/src/target/cortex_m.c @@ -879,7 +879,10 @@ static int cortex_m3_step(struct target *target, int current, else { /* Set a temporary break point */ - retval = breakpoint_add(target, pc_value, 2, BKPT_TYPE_BY_ADDR(pc_value)); + if (breakpoint) + retval = cortex_m3_set_breakpoint(target, breakpoint); + else + retval = breakpoint_add(target, pc_value, 2, BKPT_TYPE_BY_ADDR(pc_value)); bool tmp_bp_set = (retval == ERROR_OK); /* No more breakpoints left, just do a step */ @@ -903,8 +906,13 @@ static int cortex_m3_step(struct target *target, int current, isr_timed_out = ((timeval_ms() - t_start) > 500); } while (!((cortex_m3->dcb_dhcsr & S_HALT) || isr_timed_out)); - /* Remove the temporary breakpoint */ - breakpoint_remove(target, pc_value); + /* only remove breakpoint if we created it */ + if (breakpoint) + cortex_m3_unset_breakpoint(target, breakpoint); + else { + /* Remove the temporary breakpoint */ + breakpoint_remove(target, pc_value); + } if (isr_timed_out) { LOG_DEBUG("Interrupt handlers didn't complete within time, " -- ------------------------------------------------------------------------------ LogMeIn Central: Instant, anywhere, Remote PC access and management. Stay in control, update software, and manage PCs from one command center Diagnose problems and improve visibility into emerging IT issues Automate, monitor and manage. Do more in less time with Central http://p.sf.net/sfu/logmein12331_d2d _______________________________________________ OpenOCD-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openocd-devel
