Vol. 2A 3-119
INSTRUCTION SET REFERENCE, A-M
CMOVcc—Conditional Move
Opcode Instruction 64-Bit
Mode
Compat/
Leg Mode
Description
REX.W + 0F 4B /r CMOVNP r64, r/m64 Valid N.E. Move if not parity
(PF=0).
0F 49 /r CMOVNS r16, r/m16 Valid Valid Move if not sign (SF=0).
0F 49 /r CMOVNS r32, r/m32 Valid Valid Move if not sign (SF=0).
REX.W + 0F 49 /r CMOVNS r64, r/m64 Valid N.E. Move if not sign (SF=0).
0F 45 /r CMOVNZ r16, r/m16 Valid Valid Move if not zero (ZF=0).
0F 45 /r CMOVNZ r32, r/m32 Valid Valid Move if not zero (ZF=0).
REX.W + 0F 45 /r CMOVNZ r64, r/m64 Valid N.E. Move if not zero (ZF=0).
0F 40 /r CMOVO r16, r/m16 Valid Valid Move if overflow (OF=0).
0F 40 /r CMOVO r32, r/m32 Valid Valid Move if overflow (OF=0).
REX.W + 0F 40 /r CMOVO r64, r/m64 Valid N.E. Move if overflow (OF=0).
0F 4A /r CMOVP r16, r/m16 Valid Valid Move if parity (PF=1).
0F 4A /r CMOVP r32, r/m32 Valid Valid Move if parity (PF=1).
REX.W + 0F 4A /r CMOVP r64, r/m64 Valid N.E. Move if parity (PF=1).
0F 4A /r CMOVPE r16, r/m16 Valid Valid Move if parity even
(PF=1).
0F 4A /r CMOVPE r32, r/m32 Valid Valid Move if parity even
(PF=1).
REX.W + 0F 4A /r CMOVPE r64, r/m64 Valid N.E. Move if parity even
(PF=1).
0F 4B /r CMOVPO r16, r/m16 Valid Valid Move if parity odd
(PF=0).
0F 4B /r CMOVPO r32, r/m32 Valid Valid Move if parity odd
(PF=0).
REX.W + 0F 4B /r CMOVPO r64, r/m64 Valid N.E. Move if parity odd
(PF=0).
0F 48 /r CMOVS r16, r/m16 Valid Valid Move if sign (SF=1).
0F 48 /r CMOVS r32, r/m32 Valid Valid Move if sign (SF=1).
REX.W + 0F 48 /r CMOVS r64, r/m64 Valid N.E. Move if sign (SF=1).
0F 44 /r CMOVZ r16, r/m16 Valid Valid Move if zero (ZF=1).
0F 44 /r CMOVZ r32, r/m32 Valid Valid Move if zero (ZF=1).
REX.W + 0F 44 /r CMOVZ r64, r/m64 Valid N.E. Move if zero (ZF=1).