25112 Rev. 3.06 September 2005

Software Optimization Guide for AMD64 Processors

Table 18. SSE Instructions (Continued)

 

 

 

Encoding

Decode

 

 

 

Syntax

 

 

 

 

 

FPU pipe(s)

Latency

Note

 

Prefix

First

2nd

 

 

ModRM byte

type

 

 

 

 

 

 

 

byte

byte

byte

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

UNPCKLPS xmmreg1,

0Fh

14h

 

11-xxx-xxx

Double

FMUL

3

3

xmmreg2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

UNPCKLPS xmmreg,

0Fh

14h

 

mm-xxx-xxx

Double

FMUL

5

3

mem128

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XORPS xmmreg1,

0Fh

57h

 

11-xxx-xxx

Double

FMUL

3

1

xmmreg2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

XORPS xmmreg,

0Fh

57h

 

mm-xxx-xxx

Double

FMUL

5

1

mem128

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Notes:

 

 

 

 

 

 

 

 

 

1.

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

 

 

 

2.

The second latency value indicates when the low half of the result becomes available.

 

 

3.

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

 

 

 

4.

The latency listed is the absolute minimum, while average latencies may be higher and are a function of internal

 

pipeline conditions.

 

 

 

 

 

 

 

 

5.

For the PREFETCHNTA/T0/T1/T2 instructions, the mem8 value refers to an address in the 64-byte line to be

 

prefetched.

 

 

 

 

 

 

 

 

6.

The 8-clock latency is only visible to younger stores that need to do an external write. The 2-clock latency is

 

visible to the other stores and instructions.

 

 

 

 

 

7.

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

325

Page 341
Image 341
AMD 250 manual 325