GDB中数组上的条件观察点 我们正在调试一个用C++编写的布模拟器,一个常见的问题是当某些东西修改速度为楠< /代码>或一些大数。

GDB中数组上的条件观察点 我们正在调试一个用C++编写的布模拟器,一个常见的问题是当某些东西修改速度为楠< /代码>或一些大数。,gdb,conditional-breakpoint,watchpoint,Gdb,Conditional Breakpoint,Watchpoint,目前,我们必须为此测试的最佳方法是调用test\u for\u NaN(),这很慢,必须手动调用 有没有办法使用GDB自动化这个过程?也就是说,如果浮点数组中的任何值被修改为NaN或某个大于设定常数的值,则能够中断?我还没有听说过这样的事情是可能的。你不能只是在代码中以编程的方式添加它,而是将所有对这个(或任何)数组的双精度写入包装到一个函数或宏中。如果您无法更改代码,则可能需要使用较长的时间。有了pin,您可以向内存中插入任何双存储器,并编写一个处理程序来处理发生的情况。这是一个有点慢运行引脚

目前,我们必须为此测试的最佳方法是调用
test\u for\u NaN()
,这很慢,必须手动调用


有没有办法使用GDB自动化这个过程?也就是说,如果浮点数组中的任何值被修改为
NaN
或某个大于设定常数的值,则能够中断?

我还没有听说过这样的事情是可能的。你不能只是在代码中以编程的方式添加它,而是将所有对这个(或任何)数组的双精度写入包装到一个函数或宏中。如果您无法更改代码,则可能需要使用较长的时间。有了pin,您可以向内存中插入任何双存储器,并编写一个处理程序来处理发生的情况。这是一个有点慢运行引脚,但我认为它会工作,如果你愿意投资的时间。