valgrind是否考虑执行内存写入?

时间:2015-08-18 11:55:46

标签: debugging gdb valgrind watch memory-access

我有一个JIT。我在this answer中设置了一个观察点(watch - 因此它应该仅在写入时触发)到函数的jitted代码(全部)。我向valgrind提供了--vgdb=full,这意味着必须对所有指令进行检测,并且我应该看到执行停止在停止发生的位置。

然而,观察点在被观看的功能中间触发多次。我注意到执行停止的指令是基本的块入口点(它们都跟在jumpcall之后,或者它是我函数的第一条指令。)

在观察点发射时,我没有看到对观察记忆的实际写入。那么valgrind会考虑执行这个内存(其中一些)写吗?还是其他一些valgrind古怪,还是仅仅是我?

请澄清。

我的valgrind版本是3.10.0.SVN,gdb是7.7.1(Ubuntu 7.7.1-0ubuntu5~14.04.2)。

1 个答案:

答案 0 :(得分:0)

执行某些代码不应被视为写入 valgrind gdbserver。 一些valgrind跟踪参数(-v -v -v -d -d -d)可能会给出一个想法 关于会发生什么。