有没有办法在 GDB 中标记/命名断点,以便更容易地识别它们,例如,info b
?如果是这样,怎么办?
问问题
2094 次
2 回答
6
不,没有办法做到这一点。
于 2013-03-23T02:12:00.090 回答
3
虽然这对 的输出没有帮助,但info b
对于稍后需要在命令中引用断点的其他目的,您可以将最后一个断点的断点编号存储$bpnum
在另一个便利变量中,例如:
b foo.c:123
set $im_a_breakpoint = $bpnum
# ... set some more breakpoints and do some other stuff ...
disable $im_a_breakpoint
再举一个例子,我现在将这种模式用于一项任务:我在 JIT 发出的代码中使用普通的 gdb 断点,这需要在代码实际发出后在地址上设置断点,因为 gdb 修改了代码。为此,我实际上从它自己的commands
块中禁用了初始设置断点:
set $cur_stop_point = 0x41aaa
b basic_jit_cache::copy_block if ((uint32_t)this->code_ptr()) > ($gencode + $cur_stop_point)
set $cur_stop_point_setup_bp = $bpnum
commands
b *($gencode + $cur_stop_point)
disable $cur_stop_point_setup_bp
cont
end
于 2020-03-04T06:02:15.630 回答