beautypg.com

Amd confidential user manual september 12 – AMD SimNow Simulator 4.4.4 User Manual

Page 208

background image

AMD Confidential

User Manual

September 12

h

, 2008

196

Appendix A

Instruction

Supported

Mnemonic

Opcode

Description

CALL reg/mem32

FF /2

Near call with the target specified

by reg/mem32.

CALL reg/mem64

FF /2

Near call with the target specified

by reg/mem64.

CALL FAR pntr16:16

9A cd

Far call direct, with the target

specified by a far pointer contained

in the instruction.

CALL FAR pntr16:32

9A cp

Far call direct, with the target

specified by a far pointer contained

in the instruction.

CALL FAR mem16:16

FF /3

Far call indirect, with the target

specified by a far pointer in memory.

CALL FAR mem16:32

FF /3

Far call indirect, with the target

specified by a far pointer in memory.

CBW

98

Sign-extend AL into AX.

CWDE

98

Sign-extend AX into EAX.

CDQE

98

Sign-extend EAX into RAX.

CWD

99

Sign-extend AX into DX:AX.

CDQ

99

Sign-extend EAX into EDX:EAX.

CQO

99

Sign-extend RAX into RDX:RAX.

CLC

F8

Clear the carry flag (CF) to zero.

CLD

FC

Clear the direction flag (DF) to

zero.

CFLUSH mem8

0F AE /7

Flush cache line containing mem8.

CMC

F5

Complement the carry flag (CF).

CMOVO reg16,reg/mem16

0F 40 /r

Move if overflow (OF = 1).

CMOVO reg32,reg/mem32

0F 40 /r

Move if overflow (OF = 1).

CMOVO reg64,reg/mem64

0F 40 /r

Move if overflow (OF = 1).

CMOVNO reg16,reg/mem16

0F 41 /r

Move if not overflow (OF = 0).

CMOVNO reg32,reg/mem32

0F 41 /r

Move if not overflow (OF = 0).

CMOVNO reg64,reg/mem64

0F 41 /r

Move if not overflow (OF = 0).

CMOVB reg16,reg/mem16

0F 42 /r

Move if below (CF = 1).

CMOVB reg32,reg/mem32

0F 42 /r

Move if below (CF = 1).

CMOVB reg64,reg/mem64

0F 42 /r

Move if below (CF = 1).

CMOVC reg16,reg/mem16

0F 42 /r

Move if carry (CF = 1).

CMOVC reg32,reg/mem32

0F 42 /r

Move if carry (CF = 1).

CMOVC reg64,reg/mem64

0F 42 /r

Move if carry (CF = 1).

CMOVNAE reg16,reg/mem16

0F 42 /r

Move if not above or equal (CF = 1).

CMOVNAE reg32,reg/mem32

0F 42 /r

Move if not above or equal (CF = 1).

CMOVNAE reg64,reg/mem64

0F 42 /r

Move if not above or equal (CF = 1).

CMOVNB reg16,reg/mem16

0F 43 /r

Move if not below (CF = 0).

CMOVNB reg32,reg/mem32

0F 43 /r

Move if not below (CF = 0).

CMOVNB reg64,reg/mem64

0F 43 /r

Move if not below (CF = 0).

CMOVNC reg16,reg/mem16

0F 43 /r

Move if not carry (CF = 0).

CMOVNC reg32,reg/mem32

0F 43 /r

Move if not carry (CF = 0).

CMOVNC reg64,reg/mem64

0F 43 /r

Move if not carry (CF = 0).

CMOVAE reg16,reg/mem16

0F 43 /r

Move if above or equal (CF = 0).

CMOVAE reg32,reg/mem32

0F 43 /r

Move if above or equal (CF = 0).

CMOVAE reg64,reg/mem64

0F 43 /r

Move if above or equal (CF = 0).

CMOVZ reg16,reg/mem16

0F 44 /r

Move if zero (ZF = 1).

CMOVZ reg32,reg/mem32

0F 44 /r

Move if zero (ZF = 1).

CMOVZ reg64,reg/mem64

0F 44 /r

Move if zero (ZF = 1).

CMOVE reg16,reg/mem16

0F 44 /r

Move if equal (ZF = 1).

CMOVE reg32,reg/mem32

0F 44 /r

Move if equal (ZF = 1).

CMOVE reg64,reg/mem64

0F 44 /r

Move if equal (ZF = 1).

CMOVNZ reg16,reg/mem16

0F 45 /r

Move if not zero (ZF = 0).

CMOVNZ reg32,reg/mem32

0F 45 /r

Move if not zero (ZF = 0).