03.03.2013 Views

Intel® Architecture Instruction Set Extensions Programming Reference

Intel® Architecture Instruction Set Extensions Programming Reference

Intel® Architecture Instruction Set Extensions Programming Reference

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.

DATA_ADDR BASE_ADDR + (SignExtend(VINDEX1[k+63:k])*SCALE + DISP;<br />

IF MASK[31+i] THEN<br />

DEST[i +31:i] FETCH_32BITS(DATA_ADDR); // a fault exits the instruction<br />

FI;<br />

MASK[i +31:i] 0;<br />

ENDFOR<br />

MASK[VLMAX:128] 0;<br />

DEST[VLMAX:128] 0;<br />

(non-masked elements of the mask register have the content of respective element cleared)<br />

Intel C/C++ Compiler Intrinsic Equivalent<br />

VPGATHERDD: __m128i _mm_i32gather_epi32 (int const * base, __m128i index, const int scale);<br />

INSTRUCTION SET REFERENCE<br />

VPGATHERDD: __m128i _mm_mask_i32gather_epi32 (__m128i src, int const * base, __m128i index, __m128i mask, const int scale);<br />

VPGATHERDD: __m256i _mm256_i32gather_epi32 ( int const * base, __m256i index, const int scale);<br />

VPGATHERDD: __m256i _mm256_mask_i32gather_epi32 (__m256i src, int const * base, __m256i index, __m256i mask, const int scale);<br />

VPGATHERQD: __m128i _mm_i64gather_epi32 (int const * base, __m128i index, const int scale);<br />

VPGATHERQD: __m128i _mm_mask_i64gather_epi32 (__m128i src, int const * base, __m128i index, __m128i mask, const int scale);<br />

VPGATHERQD: __m128i _mm256_i64gather_epi32 (int const * base, __m256i index, const int scale);<br />

VPGATHERQD: __m128i _mm256_mask_i64gather_epi32 (__m128i src, int const * base, __m256i index, __m128i mask, const int<br />

scale);<br />

SIMD Floating-Point Exceptions<br />

None<br />

Other Exceptions<br />

See Exceptions Type 12<br />

Ref. # 319433-014 5-215

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

Saved successfully!

Ooh no, something went wrong!