Valgrind使用中间代码表示让我们测试二进制代码,以便我们不必处理编程语言级别的构造。在将二进制代码转换为Valgrind的中间表示(IR)代码的过程中,它显示了使用寄存器执行添加等操作。其中有1024个正在使用。我没有得到的是另一种称为临时寄存器的寄存器,其表示为tX
,其中X是某个数字。因此,我可以看到:寄存器和临时寄存器有什么区别?
t28 = Add32(t26,0xFFFFFFFC:I32)
t4 = LDle:I32(t28)
t
表示临时注册表。据我所知,他们似乎与常规寄存器非常相似,但无法弄清楚它们的不同之处。有人能告诉我什么是临时登记册,以及它与常规登记簿有什么不同?
我可能在这里丢失了一些明显的东西,但在这个例子中我既没有看到`R`也没有看到`T` ......? – 2010-12-10 05:21:17
@Laurence:解决了我的问题。感谢您指出。 – Legend 2010-12-10 06:04:03