03.03.2013 Views

4 Instruction tables - Agner Fog

4 Instruction tables - Agner Fog

4 Instruction tables - Agner Fog

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Nehalem<br />

ℓ) SSE4.2 instruction set<br />

m) Only available in 64 bit mode<br />

n) Only available on newer models<br />

Floating point XMM instructions<br />

<strong>Instruction</strong> Operands μops μops unfused domain DoLatenReci- fused<br />

maincyprocaldomain p015 p0 p1 p5 p2 p3 p4<br />

throughput<br />

Move instructions<br />

MOVAPS/D xmm,xmm 1 1 1 float 1 1<br />

MOVAPS/D xmm,m128 1 1 2 1<br />

MOVAPS/D m128,xmm 1 1 1 3 1<br />

MOVUPS/D xmm,m128 1 1 2 1-4<br />

MOVUPS/D m128,xmm 1 1 1 3 1-3<br />

MOVSS/D xmm,xmm 1 1 1 1 1<br />

MOVSS/D xmm,m32/64 1 1 2 1<br />

MOVSS/D m32/64,xmm 1 1 1 3 1<br />

MOVHPS/D MOVLPS/D xmm,m64 2 1 1 1 3 2<br />

MOVH/LPS/D m64,xmm 2 1 1 1 1 5 1<br />

MOVLHPS MOVHLPS xmm,xmm 1 1 1 float 1 1<br />

MOVMSKPS/D r32,xmm 1 1 1 float 1+2 1<br />

MOVNTPS/D m128,xmm 1 1 1 ~270 2<br />

SHUFPS/D xmm,xmm,i 1 1 1 float 1 1<br />

SHUFPS/D xmm,m128,i 2 1 1 1 float 1<br />

BLENDPS/PD j) xmm,xmm,i 1 1 1 float 1 1<br />

BLENDPS/PD j) xmm,m128,i 2 1 1 1 float 1<br />

BLENDVPS/PD j) x,x,xmm0 2 2 2 float 2 2<br />

BLENDVPS/PD j) xmm,m,xmm0 3 2 2 1 float 2<br />

MOVDDUP g) xmm,xmm 1 1 1 float 1 1<br />

MOVDDUP g) xmm,m64 1 1 2 1<br />

MOVSH/LDUP g) xmm,xmm 1 1 1 float 1 1<br />

MOVSH/LDUP g) xmm,m128 1 1 1<br />

UNPCKH/LPS/D xmm,xmm 1 1 1 float 1 1<br />

UNPCKH/LPS/D xmm,m128 1 1 1 1 float 1<br />

EXTRACTPS j) r32,xmm,i 1 1 1 float 1+2 1<br />

EXTRACTPS j) m32,xmm,i 2 1 1 1 1 1<br />

INSERTPS j) xmm,xmm,i 1 1 1 float 1 1<br />

INSERTPS j) xmm,m32,i 3 1 2 1 float 2<br />

Conversion<br />

CVTPD2PS xmm,xmm 2 2 1 1 float 4 1<br />

CVTPD2PS xmm,m128 2 2 1 1 float 1<br />

CVTSD2SS xmm,xmm 2 2 1 1 float 4 1<br />

CVTSD2SS xmm,m64 2 2 1 1 float 1<br />

CVTPS2PD xmm,xmm 2 2 1 1 float 2 1<br />

CVTPS2PD xmm,m64 2 2 1 1 1 float 1<br />

CVTSS2SD xmm,xmm 1 1 1 float 1 1<br />

CVTSS2SD xmm,m32 1 1 1 1 float 2<br />

Page 116

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

Saved successfully!

Ooh no, something went wrong!