From f24d9813b60969341560576256a0ea006e4eafaa Mon Sep 17 00:00:00 2001 From: Lars Rademacher Date: Mon, 21 Oct 2013 01:30:17 +0200 Subject: [PATCH] openocd: speed-up Normally OpenOCD reads all GP-Registers at halt, which is slow. Restriction to only necessary Registers 1 and 15. In the normal use case of OpenOCD this performance reduction does not matter, because debugging does not need to be optimized for performance. It just has to be faster than the human perception. If we need to get the values of the registers 2 to 14, these are fetched on demand per register. Change-Id: I8587fbcc41c18722baebca1cec074188fe4cdebb --- debuggers/openocd/src/target/arm_dpm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debuggers/openocd/src/target/arm_dpm.c b/debuggers/openocd/src/target/arm_dpm.c index b83d17a1..2ce2c5cc 100644 --- a/debuggers/openocd/src/target/arm_dpm.c +++ b/debuggers/openocd/src/target/arm_dpm.c @@ -265,7 +265,7 @@ int arm_dpm_read_current_registers(struct arm_dpm *dpm) arm_set_cpsr(arm, cpsr); /* REVISIT we can probably avoid reading R1..R14, saving time... */ - for (unsigned i = 1; i < 16; i++) { + for (unsigned i = 15; i < 16; i++) { // i = 1 r = arm_reg_current(arm, i); if (r->valid) continue;