GDB:远程目标重置/停止后更新程序集/源窗口

时间:2018-07-03 08:25:45

标签: gdb openocd jtag

在执行monitor reset halt之后如何将gdb ASM窗口与处理器的当前状态同步?

我正在使用gdb通过JTAG适配器/ openocd调试Arm cpu(在beaglebone黑色上为am335x)。我正在使用gdb -tui。我正在使用拆分视图。

当我第一次使用target remote 127.0.0.1:3334连接到该板时,该板立即停止,并且ASM窗口更新到当前PC。它显示了当前的PC及其组装指令。此后,它还显示了几条指令。我可以立即开始si逐步完成程序集。我可以使已加载的眨眼示例的LED闪烁。

如果我执行monitor reset halt,则板将重置并暂停。 GDB(openocd)输出:

(gdb) monitor reset halt
JTAG tap: am335x.jrc tap/device found: 0x2b94402f (mfg: 0x017 (Texas Instruments), part: 0xb944, ver: 0x2)
JTAG tap: am335x.tap enabled
Debug regions are unpowered, an unexpected reset might have happened
JTAG-DP STICKY ERROR
am335x.cpu: ran after reset and before halt ...
target halted in Thumb state due to debug-request, current mode: Supervisor
cpsr: 0x600001b3 pc: 0x0002412a
am335x.cpu rev 2, partnum c08, arch f, variant 3, implementor 41
MMU: disabled, D-Cache: disabled, I-Cache: disabled

我可以看到PC现在为0x0002412a。但是,ASM窗口不会更新到新位置。可以通过执行另外一个si步骤来更新窗口。

如何通过执行指令来更新ASM窗口而又不影响板的状态?

0 个答案:

没有答案