25112 Rev. 3.06 September 2005

Software Optimization Guide for AMD64 Processors

Table 19. SSE2 Instructions (Continued)

 

 

Encoding

 

 

Latency

Throughput

 

 

 

 

 

 

 

 

Syntax

 

 

 

 

Decode

FPU

 

 

Note

Prefix

First

2nd

 

 

 

ModRM byte

type

pipe(s)

 

 

 

 

 

 

 

byte

byte

byte

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PCMPGTD xmmreg,

66h

0Fh

66h

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PCMPGTW xmmreg1,

66h

0Fh

65h

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PCMPGTW xmmreg,

66h

0Fh

65h

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PEXTRW reg32/64,

66h

0Fh

C5h

 

Double

FSTORE

4

1/1

 

xmmreg, imm8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PINSRW xmmreg,

66h

0Fh

C4h

 

VectorPath

FADD/

10

1/1

 

reg32/64, imm8

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PINSRW xmmreg,

66h

0Fh

C4h

 

Double

FADD/

4

1/1

 

mem128, imm8

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMADDWD xmmreg1,

66h

0Fh

F5h

 

Double

FMUL

4

1/2

 

xmmreg2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PMADDWD xmmreg,

66h

0Fh

F5h

 

Double

FMUL

6

1/2

 

mem128

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PMAXSW xmmreg1,

66h

0Fh

EEh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMAXSW xmmreg,

66h

0Fh

EEh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMAXUB xmmreg1,

66h

0Fh

DEh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMAXUB xmmreg,

66h

0Fh

DEh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMINSW xmmreg1,

66h

0Fh

EAh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMINSW xmmreg,

66h

0Fh

EAh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMINUB xmmreg1,

66h

0Fh

DAh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMINUB xmmreg,

66h

0Fh

DAh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PMOVMSKB reg32/64,

66h

0Fh

D7h

 

VectorPath

FADD/

3

1/1

 

xmmreg

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

Notes:

1. The low half of the result is available one cycle earlier than listed.

2. This is the execution latency for the instruction. The time to complete the external write depends on the memory speed and the hardware implementation.

Appendix C

Instruction Latencies

335

Page 351
Image 351
AMD 250 manual 335, Fstore