英特尔 PIN 二进制检测工具中的 16 个通用寄存器是如何表示的

How are the 16 General Purpose Registers represented in Intel PIN binary instrumentation tool

我知道第一个8个通用寄存器是如何用PIN表示的,比如REG_GAX、REG_GBX等等。但是我似乎无法在用户手册中找到寄存器 r8 到 r15 的表示方式。

REG_GAXREG_GBX 是 shorthand 寄存器,例如 REG_GAX 在 64 位中是 REG_RAX 或在 32- 中是 REG_EAX位.

摘自 source/include/pin/gen/reg_ia32.PH,另见 file on github

REG_GAX = REG_RAX, ///< eax on a 32 bit machine, rax on 64

由于 R8 到 R15 不存在于 32 位体系结构中,因此它们没有 shorthand 除了它们自己的名称(REG_R8REG_R9、...)