riscv-openocd/src
David Brownell b6210907ea Cortex-A8: avoid DSCR reads
There was a lot of needless handshaking overhead in the current
Cortex-A8 DCC/ITR operations, since the status read by each step
was discarded rather than letting the next step know it.

This shrinks the handshaking by:  (a) passing status along from
previous steps, avoiding re-fetching; which enables the big win
(b) relying on a useful invariant:  that the DSCR_INSTR_COMP bit
is set after every call to a DPM method.

A "reg sp_usr" call previously took 17 flushes; now it takes just 9.
This visibly speeds common operations like entry to debug state and
stepping, as well as "arm reg" and so on.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
2009-11-24 21:24:44 -08:00
..
flash flash: dynamically allocate working storage 2009-11-22 19:14:06 +01:00
helper improve alloc_vprintf 2009-11-24 12:48:02 -08:00
jtag jlink: rewrite to use jtag_usb_open 2009-11-24 07:30:20 -08:00
pld command_handler: change 'cmd_ctx' to CMD_CTX 2009-11-17 11:40:06 -08:00
server use COMMAND_PARSE_ENABLE macro where appropriate 2009-11-18 15:51:07 -08:00
svf command_handler: change 'cmd_ctx' to CMD_CTX 2009-11-17 11:40:06 -08:00
target Cortex-A8: avoid DSCR reads 2009-11-24 21:24:44 -08:00
xsvf command_handler: change 'cmd_ctx' to CMD_CTX 2009-11-17 11:40:06 -08:00
Makefile.am build: fix breakage in building bin2char 2009-11-22 13:35:13 +01:00
ecosboard.c zy1000: un-break uart command after command handler refactoring 2009-11-22 13:46:42 +01:00
hello.c update src/hello.c with parsing examples 2009-11-18 15:51:07 -08:00
main.c add openocd.h for top-level declarations 2009-11-14 07:29:16 -08:00
openocd.c refactor command registration 2009-11-20 14:52:56 -08:00
openocd.h fix segfault at startup 2009-11-18 11:56:24 -08:00