内存访问会产生不同的结果

时间:2014-01-03 14:46:44

标签: linux memory gcc stack

我有函数f2()循环遍历帧指针 - 所以,它读取内存。如果我在上一个函数f1()中打印一个值保留在ebp指针中 - 下一个函数f2()也会读取它。但是如果没有f1()中的打印,则f2()会读取不正确的值。

所以,只有f1中的打印代码才有区别,它只是读取内存。它是否以某种方式与缓存相关联?

f1中的打印代码:

LOG(5, "r_ebp=%p, prev=%p\n", r_ebp, *(void **) r_ebp);

感谢。

0 个答案:

没有答案