I know how the 1st 8 general purpose registers are represented in PIN, like REG_GAX, REG_GBX and so on. However I cant seem to find in the user manual how registers r8 to r15 are represented.
REG_GAX
and REG_GBX
are shorthand registers, for example REG_GAX
is REG_RAX
in 64-bit or REG_EAX
in 32-bit.
Excerpt from source/include/pin/gen/reg_ia32.PH
, see also the file on github:
REG_GAX = REG_RAX, ///< eax on a 32 bit machine, rax on 64
As R8 up to R15 don't exist on 32-bit architecture, they have no shorthand except their own name (REG_R8
, REG_R9
, ...)