我试图使用this answer在两行代码之间生成指令跟踪。
不幸的是,while
循环中的条件是一个简单的计数,我需要继续运行循环,直到达到源代码中的特定代码行。
是否有办法检查我们是在特定的代码行上,还是在纯gdb
脚本中的特定断点处?
我知道使用Python API的解决方案here。我也知道pin-instat,但我想知道这是否可以用纯gdb完成。
答案 0 :(得分:1)
如果以这种方式做你想做的事情
1)获取有关您想要到达的行的pc
的信息
使用info line
或使用disas /m
获取有关特定代码行地址的信息。
2)写出与Tracing/profiling instructions
中类似的循环 while $pc != ADDRESS-FROM-FIRST-STEP
si
end.
这样,您将继续运行循环,直到到达源代码中的特定代码行