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.

Atom<br />

Floating point XMM instructions<br />

Operands μops Unit Latency Reciprocal<br />

Remarks<br />

Move instructions<br />

through-<br />

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

MOVAPS/D xmm,m128 1 Mem 4 1<br />

MOVAPS/D m128,xmm 1 Mem 5 1<br />

MOVUPS/D xmm,m128 4 Mem 6 6<br />

MOVUPS/D m128,xmm 3 Mem 6 6<br />

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

MOVSS/D xmm,m32/64 1 Mem 4 1<br />

MOVSS/D m32/64,xmm 1 Mem 5 1<br />

MOVHPS/D MOVLPS/D xmm,m64 1 Mem 5 1<br />

MOVHPS/D m64,xmm 1 Mem 4 1<br />

MOVLPS/D m64,xmm 1 Mem 4 1<br />

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

MOVMSKPS/D r32,xmm 1 4 2<br />

MOVNTPS/D m128,xmm 1 Mem ~500 3<br />

SHUFPS xmm,xmm,i 1 FP0 1 1<br />

SHUFPD xmm,xmm,i 1 FP0 1 1<br />

MOVDDUP xmm,xmm 1 FP0 1 1<br />

MOVSH/LDUP xmm,xmm 1 FP0 1 1<br />

UNPCKH/LPS xmm,xmm 1 FP0 1 1<br />

UNPCKH/LPD xmm,xmm 1 FP0 1<br />

Conversion<br />

CVTPD2PS xmm,xmm 4 11 11<br />

CVTSD2SS xmm,xmm 3 10 10<br />

CVTPS2PD xmm,xmm 4 7 6<br />

CVTSS2SD xmm,xmm 3 6 6<br />

CVTDQ2PS xmm,xmm 3 6 6<br />

CVT(T) PS2DQ xmm,xmm 3 6 6<br />

CVTDQ2PD xmm,xmm 3 7 6<br />

CVT(T)PD2DQ xmm,xmm 3 6 6<br />

CVTPI2PS xmm,mm 1 6 5<br />

CVT(T)PS2PI mm,xmm 1 4 1<br />

CVTPI2PD xmm,mm 3 7 6<br />

CVT(T) PD2PI mm,xmm 4 7 7<br />

CVTSI2SS xmm,r32 3 7 6<br />

CVT(T)SS2SI r32,xmm 3 10 8<br />

CVTSI2SD xmm,r32 3 8 6<br />

CVT(T)SD2SI r32,xmm 3 10 8<br />

Arithmetic<br />

ADDSS SUBSS xmm,xmm 1 FP1 5 1<br />

ADDSD SUBSD xmm,xmm 1 FP1 5 1<br />

ADDPS SUBPS xmm,xmm 1 FP1 5 1<br />

ADDPD SUBPD xmm,xmm 3 FP1 6 6<br />

ADDSUBPS xmm,xmm 1 FP1 5 1<br />

ADDSUBPD xmm,xmm 3 FP1 6 6<br />

Page 162

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

Saved successfully!

Ooh no, something went wrong!