4 Instruction tables - Agner Fog
4 Instruction tables - Agner Fog
4 Instruction tables - Agner Fog
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Pentium II and III<br />
PMOVMSKB d) r32,mm 1 1 1<br />
MOVNTQ d) m64,mm 1 1 1 - 30<br />
PSHUFW d) mm,mm,i 1 1 1<br />
PSHUFW d) mm,m64,i 1 1 2 1<br />
PEXTRW d) r32,mm,i 1 1 2 1<br />
PINSRW d) mm,r32,i 1 1 1<br />
PINSRW d) mm,m16,i 1 1 2 1<br />
PAVGB PAVGW d) mm,mm 1 1 0.5<br />
PAVGB PAVGW d) mm,m64 1 1 2 1<br />
PMIN/MAXUB/SW d) mm,mm 1 1 0.5<br />
PMIN/MAXUB/SW d) mm,m64 1 1 2 1<br />
PMULHUW d) mm,mm 1 3 1<br />
PMULHUW d) mm,m64 1 1 4 1<br />
PSADBW d) mm,mm 2 1 5 2<br />
PSADBW d)<br />
Notes:<br />
mm,m64 2 1 1 6 2<br />
d) P3 only.<br />
k)<br />
The delay can be hidden by inserting other instructions between EMMS and any<br />
subsequent floating point instruction.<br />
Floating point XMM instructions (Pentium III)<br />
<strong>Instruction</strong> Operands μops Latency Reciprocal<br />
p0 p1 p01 p2 p3 p4<br />
throughput<br />
MOVAPS xmm,xmm 2 1 1<br />
MOVAPS xmm,m128 2 2 2<br />
MOVAPS m128,xmm 2 2 3 2<br />
MOVUPS xmm,m128 4 2 4<br />
MOVUPS m128,xmm 1 4 4 3 4<br />
MOVSS xmm,xmm 1 1 1<br />
MOVSS xmm,m32 1 1 1 1<br />
MOVSS m32,xmm 1 1 1 1<br />
MOVHPS MOVLPS xmm,m64 1 1 1<br />
MOVHPS MOVLPS m64,xmm 1 1 1 1<br />
MOVLHPS MOVHLPS xmm,xmm 1 1 1<br />
MOVMSKPS r32,xmm 1 1 1<br />
MOVNTPS m128,xmm 2 2 2 - 15<br />
CVTPI2PS xmm,mm 2 3 1<br />
CVTPI2PS xmm,m64 2 1 4 2<br />
CVT(T)PS2PI mm,xmm 2 3 1<br />
CVTPS2PI mm,m128 1 2 4 1<br />
CVTSI2SS xmm,r32 2 1 4 2<br />
CVTSI2SS xmm,m32 2 2 5 2<br />
CVT(T)SS2SI r32,xmm 1 1 3 1<br />
CVTSS2SI r32,m128 1 2 4 2<br />
ADDPS SUBPS xmm,xmm 2 3 2<br />
ADDPS SUBPS xmm,m128 2 2 3 2<br />
ADDSS SUBSS xmm,xmm 1 3 1<br />
ADDSS SUBSS xmm,m32 1 1 3 1<br />
Page 69