RDSSPD, RDSSPQ
Read Shadow puntero de pila
estableVMJITAOTinstruccion
Codificaciones
| Opcode | Instruccion | Op/En | 64 bits | Compat/Legacy | Descripcion |
|---|---|---|---|---|---|
F3 0F 1E /1 (mod=11) | RDSSPD r32 | R | Valido | Valido | Copie 32 bits de sombra puntero de pila (SSP) a r32. |
F3 REX.W 0F 1E /1 (mod=11) | RDSSPQ r64 | R | Valido | No codificable | Copia sombra puntero de pila (SSP) a r64. |
Codificacion de operandos
Cada modo es un valor de la columna Op/En de arriba. Dice en que campo de la instruccion codificada va cada operando, en el orden en que se escriben, y si la instruccion lo lee, lo escribe o ambas cosas.
R
modrm.rmescriturabyte ModRM, campo r/m (bits 2-0); con el byte SIB y el desplazamiento cuando el campo mod los pide
Coste medido
Cargando las mediciones de arch-data...
Descripción
Copia el registro de la sombra actual puntero de pila (SSP) al destino de registro. Este código de operación es un NOP cuando las pilas de sombra CET no están habilitadas y en los procesadores que no soportan CET.
Operación
IF CPL = 3
IF CR4.CET & IA32_U_CET.SH_STK_EN
IF (operand size is 64 bit)
THEN
Dest := SSP;
ELSE
Dest := SSP[31:0];
FI;
FI;
ELSE
IF CR4.CET & IA32_S_CET.SH_STK_EN
IF (operand size is 64 bit)
THEN
Dest := SSP;
ELSE
Dest := SSP[31:0];
FI;
FI;
FI;Banderas afectadas
None.
C/C++ Compilador Equivalente Intrínseco
RDSSPD__int32 _rdsspd_i32(void); RDSSPQ__int64 _rdsspq_i64(void);
Excepciones
Modo real
#UD | Si se utiliza el prefijo LOCK. |
Modo protegido
#UD | Si se utiliza el prefijo LOCK. |
Modo virtual-8086
#UD | Si se utiliza el prefijo LOCK. |
Modo de compatibilidad
#UD | Si se utiliza el prefijo LOCK. |
Modo de 64 bits
#UD | Si se utiliza el prefijo LOCK. |