CMPXCHG8B - Compare and Exchange 8 Bytes |
* |
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
? |
| Code | Mnemonic | Description |
| 0F C7 /1 m64 | CMPXCHG8B m64 | Compare EDX:EAX with m64. If equal, set ZF and load ECX:EBX into m64. Else, clear ZF and load m64 into EDX:EAX. |
| Operands | Bytes | Clocks | |
| mem, reg | 3 + d(0 - 2) | 10 | NP |
| ID | unaffected | DF | unaffected |
| VIP | unaffected | IF | unaffected |
| VIF | unaffected | TF | unaffected |
| AC | unaffected | SF | unaffected |
| VM | unaffected | ZF | sets if the destination operand and EDX:EAX are equal; otherwise it is cleared |
| RF | unaffected | AF | unaffected |
| NT | unaffected | PF | unaffected |
| IOPL | unaffected | CF | unaffected |
| OF | unaffected |