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