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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDB xmmreg,

66h

0Fh

FCh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDD xmmreg1,

66h

0Fh

FEh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDD xmmreg,

66h

0Fh

FEh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDQ mmreg1,

0Fh

D4h

 

 

DirectPath

FADD/

2

1/1

 

mmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDQ mmreg, mem64

0Fh

D4h

 

 

DirectPath

FADD/

4

1/1

 

 

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDQ xmmreg1,

66h

0Fh

D4h

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDQ xmmreg,

66h

0Fh

D4h

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDSB xmmreg1,

66h

0Fh

ECh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDSB xmmreg,

66h

0Fh

ECh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDSW xmmreg1,

66h

0Fh

EDh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDSW xmmreg,

66h

0Fh

EDh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDUSB xmmreg1,

66h

0Fh

DCh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDUSB xmmreg,

66h

0Fh

DCh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDUSW xmmreg1,

66h

0Fh

DDh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDUSW xmmreg,

66h

0Fh

DDh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDW xmmreg1,

66h

0Fh

FDh

 

Double

FADD/

2

1/1

 

xmmreg2

 

 

 

 

 

FMUL

 

 

 

 

 

 

 

 

 

 

 

 

 

PADDW xmmreg,

66h

0Fh

FDh

 

Double

FADD/

4

1/1

 

mem128

 

 

 

 

 

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

333

Page 349
Image 349
AMD 250 manual 333, Fadd Fmul