XABORT
Aborto Transaccional
estableVMJITAOTinstruccion
Codificaciones
| Opcode | Instruccion | Op/En | 64 bits | Compat/Legacy | Descripcion |
|---|---|---|---|---|---|
C6 F8 ib | XABORT imm8 | A | Valido | Valido | Causa un RTM abortar si en ejecución RTM. |
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.
A
imm8byte inmediato que sigue a la instruccion
Coste medido
Cargando las mediciones de arch-data...
Descripción
XABORT obliga a un RTM abortar. Después de un aborto RTM, el procesador lógico reanudará la ejecución en la dirección descomposición computada a través de la instrucción XBEGIN más externa. El registro EAX se actualiza para reflejar una instrucción XABORT causada el aborto, y el argumento imm8 se proporcionará en los bits 31:24 de EAX.
Operación
XABORT
IF RTM_ACTIVE = 0
THEN
Treat as NOP;
ELSE
GOTO RTM_ABORT_PROCESSING;
FI;
(* For any RTM abort condition encountered during RTM execution *)
RTM_ABORT_PROCESSING:
Restore architectural register state;
Discard memory updates performed in transaction;
Update EAX with status and XABORT argument;
RTM_NEST_COUNT:= 0;
RTM_ACTIVE:= 0;
SUSLDTRK_ACTIVE := 0;
IF 64-bit Mode
THEN
RIP:= fallbackRIP;
ELSE
EIP := fallbackEIP;
FI;
ENDBanderas afectadas
None.
Intel C/C++ compilador intrínseco
XABORT void _xabort( unsigned int);SIMD coma flotante Excepciones
None.
Otras excepciones
#UDCPUID.07H.00H:EBX.RTM[11] = 0.Si LOCK prefijo es usado.