03.03.2013 Views

4 Instruction tables - Agner Fog

4 Instruction tables - Agner Fog

4 Instruction tables - Agner Fog

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Nehalem<br />

PHMINPOSUW j)<br />

PABSB PABSW PABSD<br />

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

h)<br />

PABSB PABSW PABSD<br />

(x)mm,(x)mm 1 1 x x ivec 1 0.5<br />

h)<br />

PSIGNB PSIGNW<br />

(x)mm,m 1 1 x x 1 1<br />

PSIGND h)<br />

PSIGNB PSIGNW<br />

(x)mm,(x)mm 1 1 x x ivec 1 0.5<br />

PSIGND h)<br />

(x)mm,m 1 1 x x 1 2<br />

PSADBW (x)mm,(x)mm 1 1 1 ivec 3 1<br />

PSADBW (x)mm,m 1 1 1 1 3<br />

MPSADBW j) xmm,xmm,i 3 3 x x x ivec 5 1<br />

MPSADBW j) xmm,m,i 4 3 x x x 1 2<br />

PCLMULQDQ n)<br />

AESDEC, AESDECLAST,<br />

AESENC, AESENCLAST<br />

n)<br />

xmm,xmm,i 12 8<br />

xmm,xmm ~5 ~2<br />

AESIMC n) xmm,xmm ~5 ~2<br />

AESKEYGENASSIST n) xmm,xmm,i ~5 ~2<br />

Logic instructions<br />

PAND(N) POR PXOR (x)mm,(x)mm 1 1 x x x ivec 1 0.33<br />

PAND(N) POR PXOR (x)mm,m 1 1 x x x 1 1<br />

PTEST j) xmm,xmm 2 2 x x x ivec 3 1<br />

PTEST j) xmm,m128 2 2 x x x 1 1<br />

PSLL/RL/RAW/D/Q mm,mm/i 1 1 1 ivec 1 1<br />

PSLL/RL/RAW/D/Q mm,m64 1 1 1 1 2<br />

PSLL/RL/RAW/D/Q xmm,i 1 1 1 ivec 1 1<br />

PSLL/RL/RAW/D/Q xmm,xmm 2 2 x 1 x ivec 2 2<br />

PSLL/RL/RAW/D/Q xmm,m128 3 2 x 1 x 1 1<br />

PSLL/RLDQ xmm,i 1 1 x x ivec 1 1<br />

String instructions<br />

PCMPESTRI ℓ) xmm,xmm,i 8 8 x x x ivec 14 5<br />

PCMPESTRI ℓ) xmm,m128,i 9 8 x x x 1 ivec 14 6<br />

PCMPESTRM ℓ) xmm,xmm,i 9 9 x x x ivec 7 6<br />

PCMPESTRM ℓ) xmm,m128,i 10 10 x x x 1 ivec 7 6<br />

PCMPISTRI ℓ) xmm,xmm,i 3 3 x x x ivec 8 2<br />

PCMPISTRI ℓ) xmm,m128,i 4 4 x x x 1 ivec 8 2<br />

PCMPISTRM ℓ) xmm,xmm,i 4 4 x x x ivec 7 2<br />

PCMPISTRM ℓ) xmm,m128,i 6 5 x x x 1 ivec 7 5<br />

Other<br />

EMMS<br />

Notes:<br />

11 11 x x x float 6<br />

g) SSE3 instruction set.<br />

h) Supplementary SSE3 instruction set.<br />

j) SSE4.1 instruction set<br />

k)<br />

MASM uses the name MOVD rather than MOVQ for this instruction even when<br />

moving 64 bits<br />

Page 115

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

Saved successfully!

Ooh no, something went wrong!