【发布时间】:2015-11-23 14:43:58
【问题描述】:
我想检测硬件断点。我可以使用以下方法读取寄存器值:
unsigned sp;
__asm __volatile("movl %%esp, %0" : "=r" (sp));
return sp;
尝试在 64 位机器上读取 dr0 我得到 Error: unsupported instruction 'mov'。
我设法使用-m32 进行编译,但是当我尝试运行时出现分段错误。
如何检查调试寄存器?我对 32 位和 64 位解决方案都感兴趣。
【问题讨论】:
-
为什么这被否决了?请解释一下。
-
您被否决了,因为您没有向我们展示错误代码。如果您不向我们展示您的所作所为,我们应该如何告诉您您做错了什么?
-
@FUZxxl,错误代码在上面,把esp换成dr0就好了。
-
如果你一开始就这么说,那就没有任何问题了。