CMPXCHG8B
MEM0:rcw:q REG0=XED_REG_EDX:rcw:SUPP REG1=XED_REG_EAX:rcw:SUPP REG2=XED_REG_ECX:r:SUPP REG3=XED_REG_EBX:r:SUPP MEM0:rcw:q REG0=XED_REG_EDX:rcw:SUPP REG1=XED_REG_EAX:rcw:SUPP REG2=XED_REG_ECX:r:SUPP REG3=XED_REG_EBX:r:SUPP
x86_64 X86_LEGACY SEMAPHORE PENTIUMREAL source: xed
XED_CMPXCHG8B_X86_LEGACY_0F_C7_485727
Encoding
| encoding_kind | X86_LEGACY |
| opcode_bytes | C7 0F C7 |
| opcode_map | 0F |
| mandatory_prefix | - |
| has_modrm | True |
| modrm.reg = /1 | /1 |
| requires_mode | long |
| attributes | LOCKABLE |
| cpl | 3 |
| raw_encoding | 0x0F 0xC7 MOD[mm] MOD!=3 REG[0b001] RM[nnn] not64 IMMUNE66() MODRM() nolock_prefix 0x0F 0xC7 MOD[mm] MOD!=3 REG[0b001] RM[nnn] mode64 norexw_prefix IMMUNE66() MODRM() nolock_prefix |
Operands (10)
| # | Role | Kind | Class / Reg | Width | Access | Visibility | Encoded in |
|---|---|---|---|---|---|---|---|
| 0 | MEM0 | MEM | q | R | EXPLICIT | MODRM_RM | |
| 1 | REG0 | REG | (=EDX) | R | SUPPRESSED | MODRM_REG | |
| 2 | REG1 | REG | (=EAX) | R | SUPPRESSED | MODRM_REG | |
| 3 | REG2 | REG | (=ECX) | R | SUPPRESSED | MODRM_REG | |
| 4 | REG3 | REG | (=EBX) | R | SUPPRESSED | MODRM_REG | |
| 5 | MEM1 | MEM | q | R | EXPLICIT | MODRM_RM | |
| 6 | REG4 | REG | (=EDX) | R | SUPPRESSED | MODRM_REG | |
| 7 | REG5 | REG | (=EAX) | R | SUPPRESSED | MODRM_REG | |
| 8 | REG6 | REG | (=ECX) | R | SUPPRESSED | MODRM_REG | |
| 9 | REG7 | REG | (=EBX) | R | SUPPRESSED | MODRM_REG |
Flag effects (1)
ZF = WRITE
Micro-ops sequence (0)
No micro-ops authored for this encoding. Emulator semantics not yet defined — decoder still works.