【发布时间】:2015-04-30 03:58:07
【问题描述】:
目前,我正在使用 set disassemble-next-line 设置运行 GDB。对于每一行,这给了我一个看起来像这样的格式:
0x08120921 <arith_driver+1>: 57 push %edi
相反,我希望这条线看起来像:
0x8120921<arith_driver+1>data.c:2577 push %edi M[0xffffc9c4]=0x084073c2 esp=0xffffc9c4
其中 M[address] 表示内存中的一个位置,而 esp 指的是寄存器。其他一切都是不言自明的。似乎应该有一种方法来指定汇编代码输出格式,但我找不到任何东西。有什么帮助吗?
【问题讨论】:
-
gdb 不知道每条指令的作用,因此它不知道应该为您打印什么内容。 (我假设您并不总是想打印
M[esp]和esp)。 -
@Jester Fair。第三列无关紧要。只需让机器指令在它们旁边打印源代码行并且不打印代表机器代码的字节就足够了。有没有办法做到这一点?
标签: debugging assembly formatting x86 gdb