Using DS-5's Eclipse debugger and DSTREAM agent, I am stepping through the code running on an ARM M7 in a chip on a dev board. The build was done using optimization level -O1, so not all variables are visible in the debugger and the "current statement" flow isn't linear.
Thus, I set a breakpoint in the Disassembly view. The breakpoint is on an instruction which is a "timeout" loop, and is conditionally executed following an ITT instruction. Problem is that b/c it is an ITT block, the PC always gets to that instruction. If the loop is long (and it is), then there'll be many stops.
I am trying to make a conditional breakpoint (through "Breakpoint Properties") where the Stop Condition is based on a register's value (i.e., "r3 > 0xFA000") but the debugger give me an error that it cannot recognize "r3".
How can I set a condition based on a register value, rather than a C-level object?
Try putting $R3 > 0xFA000 as the "Stop Condition" for the breakpoint Properties (right-click on breakpoint in the Breakpoints pane and select Properties...). "$R3" refers to the Core R3 register.