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 M<br />
CALL near 4 1 1 1 1 2<br />
CALL far 32 27 1 2 2 27<br />
CALL r 4 1 2 1 1 9<br />
CALL m(near) 4 1 1 1 1 2<br />
CALL m(far) 35 29 2 2 2 30<br />
RETN 2 1 2 1 2<br />
RETN i 3 1 1 1 2<br />
RETF 27 24 3 30<br />
RETF i 27 24 3 30<br />
BOUND r,m 15 7 6 2 8<br />
INTO 5 5 4<br />
String instructions<br />
LODS 2 2 4<br />
REP LODS 6n 10+6n 0.5<br />
STOS 3 1 1 1 1<br />
REP STOS 5n ca. 5n a) 0.7<br />
MOVS 6 1 3 1 1 0.7<br />
REP MOVS 6n ca. 6n a) 0.5<br />
SCAS 3 1 2 1.3<br />
REP(N)E SCAS 7n 12+7n 0.6<br />
CMPS 6 4 2 0.7<br />
REP(N)E CMPS 9n 12+9n 0.5<br />
Other<br />
NOP (90) 1 1 0.5<br />
Long NOP (0F 1F) 1 1 1<br />
PAUSE 2 2<br />
CLI 9<br />
STI 17<br />
ENTER i,0 12 10 1 1<br />
ENTER a,b ca. 18 +4b b-1 2b<br />
LEAVE 3 2 1<br />
CPUID 38-59 38-59 ca. 130<br />
RDTSC<br />
Notes:<br />
13 13 42<br />
a)<br />
Faster under certain conditions: see manual 3: "The microarchitecture of Intel,<br />
AMD and VIA CPUs".<br />
b) Has an implicit LOCK prefix.<br />
c)<br />
High values are typical, low values are for round divisors. Core Solo/Duo is<br />
more efficient than Pentium M in cases with round values that allow an<br />
early-out algorithm.<br />
Floating point x87 instructions<br />
<strong>Instruction</strong> Operands μops μops unfused domain Latency<br />
fused<br />
domain p0 p1 p01 p2 p3 p4<br />
Move instructions<br />
Page 74<br />
Reciprocal<br />
through<br />
put