我只是在使用英特尔的 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 次。但在代码中,所有变量的引用不超过两次。如何获得实际的内存访问跟踪。任何人都可以帮助我,请真的很感激。