【发布时间】:2016-02-10 13:32:54
【问题描述】:
我只是在使用英特尔的 pin 工具时遇到了问题。我想要一个 c++ 程序的内存访问跟踪,并为此使用它。首先,我使用
运行 c++ 程序 (./a.out)../../../pin -t obj-intel64/pinatrace.so -- ./a.out
现在在 c++ 中,我还打印了每个变量的地址。现在,当我将 pin 生成的文件中的所有地址替换为文件输出的实际变量名时,它给了我错误的顺序。
例如,对于一个 sum 程序,其中添加了变量 'a' 和 'b' 并将结果存储在 'c' 中并在控制台上打印(只是一小段 5 行代码),在由 pin 'b' 生成的文件中存在 150 次,“a”存在 33 次,“c”存在 3 次。但在代码中,所有变量的引用不超过两次。如何获得实际的内存访问跟踪。任何人都可以帮助我,请非常感激。
【问题讨论】: