03.03.2013 Views

4 Instruction tables - Agner Fog

4 Instruction tables - Agner Fog

4 Instruction tables - Agner Fog

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

K8<br />

<strong>Instruction</strong><br />

Move instructions<br />

Operands Ops Latency Reciprocal<br />

throughput<br />

Execution unit Notes<br />

MOVD r32, mm 2 4 2 FMICS, ALU<br />

MOVD mm, r32 2 9 2 FANY, ALU<br />

MOVD mm,m32 1 1/2 FANY<br />

MOVD r32, xmm 3 2 2 FMISC, ALU<br />

MOVD xmm, r32 3 3 2<br />

MOVD xmm,m32 2 1 FANY<br />

MOVD m32, r 1 1 FMISC<br />

Moves 64 bits.Name<br />

MOVD (MOVQ) r64,mm/xmm 2 4 2 FMISC, ALU of instruction differs<br />

MOVD (MOVQ) mm,r64 2 9 2 FANY, ALU do.<br />

MOVD (MOVQ) xmm,r64 3 9 2 FANY, ALU do.<br />

MOVQ mm,mm 1 2 1/2 FA/M<br />

MOVQ xmm,xmm 2 2 1 FA/M, FMISC<br />

MOVQ mm,m64 1 1/2 FANY<br />

MOVQ xmm,m64 2 1 FANY, FMISC<br />

MOVQ m64,mm/x 1 1 FMISC<br />

MOVDQA xmm,xmm 2 2 1 FA/M<br />

MOVDQA xmm,m 2 2 FMISC<br />

MOVDQA m,xmm 2 2 FMISC<br />

MOVDQU xmm,m 4 2<br />

MOVDQU m,xmm 5 2<br />

MOVDQ2Q mm,xmm 1 2 1/2 FA/M<br />

MOVQ2DQ xmm,mm 2 2 1 FA/M, FMISC<br />

MOVNTQ m,mm 1 2 FMISC<br />

MOVNTDQ<br />

PACKSSWB/DW<br />

m,xmm 2 3 FMISC<br />

PACKUSWB<br />

PACKSSWB/DW<br />

mm,r/m 1 2 2 FA/M<br />

PACKUSWB<br />

PUNPCKH/LBW/WD/<br />

xmm,r/m 3 3 2 FA/M<br />

DQ<br />

PUNPCKH/LBW/WD/<br />

mm,r/m 1 2 2 FA/M<br />

DQ<br />

xmm,r/m 2 2 2 FA/M<br />

PUNPCKHQDQ xmm,r/m 2 2 1 FA/M<br />

PUNPCKLQDQ xmm,r/m 1 2 1/2 FA/M<br />

PSHUFD xmm,xmm,i 3 3 1.5 FA/M<br />

PSHUFW mm,mm,i 1 2 1/2 FA/M<br />

PSHUFL/HW xmm,xmm,i 2 2 1 FA/M<br />

MASKMOVQ mm,mm 32 13<br />

MASKMOVDQU xmm,xmm 64 26<br />

PMOVMSKB r32,mm/xmm 1 2 1 FADD<br />

PEXTRW r32,mm/x,i 2 5 2 FMISC, ALU<br />

PINSRW mm,r32,i 2 12 2 FA/M<br />

PINSRW xmm,r32,i 3 12 3 FA/M<br />

Arithmetic instructions<br />

Page 22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!