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.
K10<br />
REP LODS 5 2 2 values are per count<br />
STOS 4 2 2<br />
REP STOS 2 1 1 values are per count<br />
MOVS 7 3 3<br />
REP MOVS 3 1 1 values are per count<br />
SCAS 5 2 2<br />
REP SCAS 5 2 2 values are per count<br />
CMPS 7 3 3<br />
REP CMPS 3 1 1 values are per count<br />
Other<br />
NOP (90) 1 0 1/3 ALU<br />
Long NOP (0F 1F) 1 0 1/3 ALU<br />
ENTER i,0 12 12<br />
LEAVE 2 3 3 ops, 5 clk if 16 bit<br />
CLI 8-9 5<br />
STI 16-17 27<br />
CPUID 22-50 47-164<br />
RDTSC 30 67<br />
RDPMC 13 5<br />
Floating point x87 instructions<br />
<strong>Instruction</strong><br />
Move instructions<br />
Operands Ops Latency Reciprocal<br />
throughput<br />
Execution unit Notes<br />
FLD r 1 2 1/2 FA/M<br />
FLD m32/64 1 4 1/2 FANY<br />
FLD m80 7 13 4<br />
FBLD m80 20 94 30<br />
FST(P) r 1 2 1/2 FA/M<br />
FST(P) m32/64 1 2 1 FMISC<br />
FSTP m80 10 8 7<br />
FBSTP m80 218 167 163<br />
FXCH r 1 0 1/3<br />
FILD m 1 6 1 FMISC<br />
FIST(P) m 1 4 1 FMISC<br />
FLDZ, FLD1 1 1 FMISC<br />
Low latency imme-<br />
FCMOVcc st0,r 9 FMISC, FA/M diately after FCOMI<br />
FFREE r 1 1/3 FANY<br />
FINCSTP, FDECSTP 1 0 1/3 FANY<br />
FNSTSW AX 2 16 FMISC, ALU<br />
Low latency<br />
immediately after<br />
FCOM FTST<br />
FSTSW AX 3 14 FMISC, ALU do.<br />
FNSTSW m16 2 9 FMISC, ALU do.<br />
FNSTCW m16 3 2 FMISC, ALU<br />
FLDCW m16 12 14 FMISC, ALU faster if unchanged<br />
Arithmetic instructions<br />
Page 30