cmova

Pentium Pro and later

Move if above (CF == 0 and ZF == 0)

cmova reg16, r/m16 | cmova reg32, r/m32 | cmova reg64, r/m64 | cmova reg16, reg16, r/m16 | cmova reg32, reg32, r/m32 | cmova reg64, reg64, r/m64

CMOV moves its source (second) operand into its destination (first) operand if the given condition code is satisfied; otherwise it does nothing.

For a list of condition codes, see the condition codes.

Although the CMOV instructions are flagged P6 and above, they may not be supported by all Pentium Pro processors; the CPUID instruction (CPUID) will return a bit which indicates whether conditional moves are supported.

Loading...

Forms

Every form of cmova the assembler accepts.

FormSinceNotes
cmova reg16, r/m16Pentium Pro
cmova reg32, r/m32Pentium Pro
cmova reg64, r/m64x86-64long
cmova reg16, reg16, r/m16x86-64apxlong
cmova reg32, reg32, r/m32x86-64apxlong
cmova reg64, reg64, r/m64x86-64apxlong