summaryrefslogtreecommitdiff
path: root/tcl/cpu/arm/arm946.tcl
diff options
context:
space:
mode:
authorMike Dunn <mikedunn@newsguy.com>2010-09-08 19:13:14 -0700
committerØyvind Harboe <oyvind.harboe@zylin.com>2010-09-09 09:22:11 +0200
commite1c6f6783d68f0dcc766b3e6317348e3838a3856 (patch)
treeeebbc81e4cfa08b8fe17f5d626682795f5e97b19 /tcl/cpu/arm/arm946.tcl
parenta40f12d62693042415c46bcc95b0bd86d9eaea81 (diff)
downloadopenocd+libswd-e1c6f6783d68f0dcc766b3e6317348e3838a3856.tar.gz
openocd+libswd-e1c6f6783d68f0dcc766b3e6317348e3838a3856.tar.bz2
openocd+libswd-e1c6f6783d68f0dcc766b3e6317348e3838a3856.tar.xz
openocd+libswd-e1c6f6783d68f0dcc766b3e6317348e3838a3856.zip
xscale: mark xscale registers invalid on debug entry
Hi everyone, This simple patch fixes a problem I noticed on the xscale where incorrect values are sometimes reported by the reg command. The problem can occur when requesting the value of registers in the xscale-specific register cache. With a couple of exceptions, none of the registers in the xscale register cache are automatically retrieved on debug entry. This is probably fine, as they are unlikely to be needed on a regular basis during a typical debug session, and they can be retrieved when explicitly requested by name using the reg command. The problem is that once this is done, the register remains marked as valid for the remainder of the OpenOCD session, and the reg command will henceforth always report the same value because it is obtained from the cache and is never again retrieved from the debug handler on the target. The fix is to mark all registers in the xscale register cache as invalid on debug entry (before the two exceptions are retrieved), thus forcing retrieval (when requested) from the target across resumptions in execution, and avoiding the reporting of stale values. Small addition change by Øyvind: change 'i' to unsigned to fix compiler warning for xscale_debug_entry() fn. Signed-off-by: Mike Dunn <mikedunn@newsguy.com> Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Diffstat (limited to 'tcl/cpu/arm/arm946.tcl')
0 files changed, 0 insertions, 0 deletions