rdpid
Read Processor ID
RDPID r32
Reads the processor ID (TSC_AUX) into register.
Pseudocode Operation
IF CPUID.RDPID = 0 THEN #UD FI;
dest[31:0] ← IA32_TSC_AUX[31:0];
dest[63:32] ← 0;
Example
RDPID eax
Encoding
Binary Layout
F3
+0
0F
+1
C7
+2
ModRM
+3
Operands
-
dest
32-bit general-purpose register (e.g. EAX)
Related
More in RDPID
Reference
Instruction Forms
| Opcode | Instruction | Op/En | 64/32-bit Mode | CPUID | Description |
|---|---|---|---|---|---|
| F3 0F C7 /7 | RDPID | R | N.E./V | Read IA32_TSC_AUX into r32. RDPID r32 | |
| F3 0F C7 /7 | RDPID | R | V/N.E. | R | Read IA32_TSC_AUX into r64. RDPID r64 Instruction Operand Encoding1 Op/En Operand 1 Operand 2 Operand 3 Operand 4 ModRM:r/m (w) N/A N/A N/A |
Description
Reads the value of the IA32_TSC_AUX MSR (address C0000103H) into the destination register. The value of CS.D and operand-size prefixes (66H and REX.W) do not affect the behavior of the RDPID instruction.
Operation
DEST := IA32_TSC_AUX
Flags Affected
None.
Exceptions
Protected Mode Exceptions
#UD If the LOCK prefix is used.
If CPUID.07H.00H:ECX.RDPID[22] = 0.
Real-Address Mode Exceptions
Same exceptions as in protected mode.
Virtual-8086 Mode Exceptions
Same exceptions as in protected mode.
Compatibility Mode Exceptions
Same exceptions as in protected mode.
64-Bit Mode Exceptions
Same exceptions as in protected mode.
1.ModRM.MOD = 011B required
RDPID-Read Processor ID Vol. 2B 4-548