x86 Compiler Intrinsics
3623 intrinsics from the Intel® SDM, each mapped to the instruction it compiles to - page 2 of 37, alphabetical. The global search in the top nav also matches intrinsic names directly.
| Intrinsic | Instruction | Signature |
|---|---|---|
| _mm256_ceil_ps | roundps | __m256 _mm256_ceil_ps(__m256 s1) |
| _mm256_clmulepi64_epi128 | vpclmulqdq | VPCLMULQDQ __m256i _mm256_clmulepi64_epi128(__m256i, __m256i, const int); |
| _mm256_cmp_epi16_mask | vpcmpw | VPCMPW __mmask16 _mm256_cmp_epi16_mask( __m256i a, __m256i b, int cmp); |
| _mm256_cmp_epi32_mask | vpcmpd | VPCMPD __mmask8 _mm256_cmp_epi32_mask( __m256i a, __m256i b, int imm); |
| _mm256_cmp_epi64_mask | vpcmpq | VPCMPQ __mmask8 _mm256_cmp_epi64_mask( __m256i a, __m256i b, int imm); |
| _mm256_cmp_epi8_mask | vpcmpb | VPCMPB __mmask32 _mm256_cmp_epi8_mask( __m256i a, __m256i b, int cmp); |
| _mm256_cmp_epu16_mask | vpcmpuw | VPCMPUW __mmask16 _mm256_cmp_epu16_mask( __m256i a, __m256i b, int cmp); |
| _mm256_cmp_epu32_mask | vpcmpud | VPCMPUD __mmask8 _mm256_cmp_epu32_mask( __m256i a, __m256i b, int imm); |
| _mm256_cmp_epu64_mask | vpcmpuq | VPCMPUQ __mmask8 _mm256_cmp_epu64_mask( __m256i a, __m256i b, int imm); |
| _mm256_cmp_epu8_mask | vpcmpub | VPCMPUB __mmask32 _mm256_cmp_epu8_mask( __m256i a, __m256i b, int cmp); |
| _mm256_cmp_pd | vcmppd | VCMPPD __m256 _mm256_cmp_pd(__m256d a, __m256d b, int imm) |
| _mm256_cmp_pd_mask | vcmppd | VCMPPD __mmask8 _mm256_cmp_pd_mask( __m256d a, __m256d b, int imm); |
| _mm256_cmp_ps | vcmpps | VCMPPS __m256 _mm256_cmp_ps(__m256 a, __m256 b, int imm) |
| _mm256_cmp_ps_mask | vcmpps | VCMPPS __mmask8 _mm256_cmp_ps_mask( __m256 a, __m256 b, int imm); |
| _mm256_cmpeq_epi16 | pcmpeqb | VPCMPEQW __m256i _mm256_cmpeq_epi16 ( __m256i a, __m256i b) |
| _mm256_cmpeq_epi16_mask | pcmpeqb | VPCMPEQW __mmask16 _mm256_cmpeq_epi16_mask(__m256i a, __m256i b); |
| _mm256_cmpeq_epi32 | pcmpeqb | VPCMPEQD __m256i _mm256_cmpeq_epi32 ( __m256i a, __m256i b) |
| _mm256_cmpeq_epi32_mask | pcmpeqb | VPCMPEQD __mmask8 _mm256_cmpeq_epi32_mask(__m256i a, __m256i b); |
| _mm256_cmpeq_epi64 | pcmpeqq | VPCMPEQQ __m256i _mm256_cmpeq_epi64( __m256i a, __m256i b); |
| _mm256_cmpeq_epi64_mask | pcmpeqq | VPCMPEQQ __mmask8 _mm256_cmpeq_epi64_mask( __m256i a, __m256i b); |
| _mm256_cmpeq_epi8 | pcmpeqb | VPCMPEQB __m256i _mm256_cmpeq_epi8 ( __m256i a, __m256i b) |
| _mm256_cmpeq_epi8_mask | pcmpeqb | VPCMPEQB __mmask32 _mm256_cmpeq_epi8_mask(__m256i a, __m256i b); |
| _mm256_cmpgt_epi16 | pcmpgtb | VPCMPGTW __m256i _mm256_cmpgt_epi16 ( __m256i a, __m256i b) |
| _mm256_cmpgt_epi16_mask | pcmpgtb | VPCMPGTW __mmask16 _mm256_cmpgt_epi16_mask(__m256i a, __m256i b); |
| _mm256_cmpgt_epi32 | pcmpgtb | VPCMPGTD __m256i _mm256_cmpgt_epi32 ( __m256i a, __m256i b) |
| _mm256_cmpgt_epi32_mask | pcmpgtb | VPCMPGTD __mmask8 _mm256_cmpgt_epi32_mask(__m256i a, __m256i b); |
| _mm256_cmpgt_epi64 | pcmpgtq | VPCMPGTQ __m256i _mm256_cmpgt_epi64( __m256i a, __m256i b); |
| _mm256_cmpgt_epi64_mask | pcmpgtq | VPCMPGTQ __mmask8 _mm256_cmpgt_epi64_mask( __m256i a, __m256i b); |
| _mm256_cmpgt_epi8 | pcmpgtb | VPCMPGTB __m256i _mm256_cmpgt_epi8 ( __m256i a, __m256i b) |
| _mm256_cmpgt_epi8_mask | pcmpgtb | VPCMPGTB __mmask32 _mm256_cmpgt_epi8_mask(__m256i a, __m256i b); |
| _mm256_conflict_epi32 | vpconflictd | VPCONFLICTD __m256i _mm256_conflict_epi32( __m256i a); |
| _mm256_conflict_epi64 | vpconflictq | VPCONFLICTQ __m256i _mm256_conflict_epi64( __m256i a); |
| _mm256_cvtepi16_epi32 | pmovsxbw | VPMOVSXWD __m256i _mm256_cvtepi16_epi32(__m256i a); |
| _mm256_cvtepi16_epi64 | pmovsxbw | VPMOVSXWQ __m256i _mm256_cvtepi16_epi64(__m256i a); |
| _mm256_cvtepi16_epi8 | vpmovswb | VPMOVWB __m128i _mm256_cvtepi16_epi8(__m256i a); |
| _mm256_cvtepi32_epi64 | pmovsxbw | VPMOVSXDQ __m256i _mm256_cvtepi32_epi64(__m256i a); |
| _mm256_cvtepi32_epi8 | vpmovdb | VPMOVDB __m128i _mm256_cvtepi32_epi8(__m256i a); |
| _mm256_cvtepi32_pd | cvtdq2pd | VCVTDQ2PD __m256d _mm256_cvtepi32_pd (__m128i src); |
| _mm256_cvtepi32_ps | cvtdq2ps | CVTDQ2PS __m256 _mm256_cvtepi32_ps (__m256i src) |
| _mm256_cvtepi64_epi8 | vpmovsqb | VPMOVQB __m128i _mm256_cvtepi64_epi8(__m256i a); |
| _mm256_cvtepi8_epi16 | pmovsxbw | VPMOVSXBW __m256i _mm256_cvtepi8_epi16(__m256i a); |
| _mm256_cvtepi8_epi32 | pmovsxbw | VPMOVSXBD __m256i _mm256_cvtepi8_epi32(__m256i a); |
| _mm256_cvtepi8_epi64 | pmovsxbw | VPMOVSXBQ __m256i _mm256_cvtepi8_epi64(__m256i a); |
| _mm256_cvtepu16_epi32 | pmovzxbw | VPMOVZXWD __m256i _mm256_cvtepu16_epi32(__m128i a); |
| _mm256_cvtepu16_epi64 | pmovzxbw | VPMOVZXWQ __m256i _mm256_cvtepu16_epi64(__m128i a); |
| _mm256_cvtepu32_epi64 | pmovzxbw | VPMOVZXDQ __m256i _mm256_cvtepu32_epi64(__m128i a); |
| _mm256_cvtepu32_pd | vcvtudq2pd | VCVTUDQ2PD __m256d _mm256_cvtepu32_pd( __m128i a); |
| _mm256_cvtepu32_ps | vcvtudq2ps | VCVTUDQ2PS __m256 _mm256_cvtepu32_ps( __m256i a); |
| _mm256_cvtepu64_ps | vcvtuqq2ps | VCVTUQQ2PS __m128 _mm256_cvtepu64_ps( __m256i a); |
| _mm256_cvtepu8_epi16 | pmovzxbw | VPMOVZXBW __m256i _mm256_cvtepu8_epi16(__m256i a); |
| _mm256_cvtepu8_epi32 | pmovzxbw | VPMOVZXBD __m256i _mm256_cvtepu8_epi32(__m128i a); |
| _mm256_cvtepu8_epi64 | pmovzxbw | VPMOVZXBQ __m256i _mm256_cvtepu8_epi64(__m128i a); |
| _mm256_cvtne2ps_pbh | vcvtne2ps2bf16 | VCVTNE2PS2BF16 __m256bh _mm256_cvtne2ps_pbh (__m256, __m256); |
| _mm256_cvtpd_epi32 | cvtpd2dq | VCVTPD2DQ __m128i _mm256_cvtpd_epi32 (__m256d src) |
| _mm256_cvtpd_epu64 | vcvtpd2uqq | VCVTPD2UQQ __m256i _mm256_cvtpd_epu64 (__m256d src) |
| _mm256_cvtpd_ps | cvtpd2ps | VCVTPD2PS __m128 _mm256_cvtpd_ps (__m256d a) |
| _mm256_cvtph_ps | vcvtph2ps | VCVTPH2PS __m256 _mm256_cvtph_ps ( __m128i m1) |
| _mm256_cvtps_epi32 | vcvtps2dq | VCVTPS2DQ __ m256i _mm256_cvtps_epi32 (__m256 a) |
| _mm256_cvtps_epu32 | vcvtps2udq | VCVTPS2UDQ __m256i _mm256_cvtps_epu32( __m256d a); |
| _mm256_cvtps_epu64 | vcvtps2uqq | VCVTPS2UQQ __m256i _mm256_cvtps_epu64( __m256 a); |
| _mm256_cvtps_pd | cvtps2pd | VCVTPS2PD __m256d _mm256_cvtps_pd (__m128 a) |
| _mm256_cvtps_ph | vcvtps2ph | VCVTPS2PH __m128i _mm256_cvtps_ph(__m256 m1, const int imm); |
| _mm256_cvtsepi16_epi8 | vpmovswb | VPMOVSWB __m128i _mm256_cvtsepi16_epi8(__m256i a); |
| _mm256_cvtsepi32_epi8 | vpmovdb | VPMOVSDB __m128i _mm256_cvtsepi32_epi8(__m256i a); |
| _mm256_cvtsepi64_epi8 | vpmovsqb | VPMOVSQB __m128i _mm256_cvtsepi64_epi8(__m256i a); |
| _mm256_cvttpd_epi32 | cvttpd2dq | VCVTTPD2DQ __m128i _mm256_cvttpd_epi32 (__m256d src); |
| _mm256_cvttps_epi32 | vcvttps2dq | VCVTTPS2DQ __m256i _mm256_cvttps_epi32 (__m256 a) |
| _mm256_cvtusepi16_epi8 | vpmovuswb | VPMOVUSWB __m128i _mm256_cvtusepi16_epi8(__m256i a); |
| _mm256_cvtusepi32_epi8 | vpmovusdb | VPMOVUSDB __m128i _mm256_cvtusepi32_epi8(__m256i a); |
| _mm256_cvtusepi64_epi8 | vpmovusqb | VPMOVUSQB __m128i _mm256_cvtusepi64_epi8(__m256i a); |
| _mm256_cvtxph_ps | vcvtph2ps | VCVTPH2PSX __m256 _mm256_cvtxph_ps (__m128h a); |
| _mm256_dbsad_epu8 | vdbpsadbw | VDBPSADBW __m256i _mm256_dbsad_epu8(__m256i a, __m256i b int imm8); |
| _mm256_div_pd | divpd | VDIVPD __m256d _mm256_div_pd (__m256d a, __m256d b); |
| _mm256_div_ph | vdivph | VDIVPH __m256h _mm256_div_ph (__m256h a, __m256h b); |
| _mm256_div_ps | divps | VDIVPS __m256 _mm256_div_ps (__m256 a, __m256 b); |
| _mm256_dp_ps | dpps | VDPPS __m256 _mm256_dp_ps ( __m256 a, __m256 b, const int mask); |
| _mm256_dpbf16_ps | vdpbf16ps | VDPBF16PS __m256 _mm256_dpbf16_ps(__m256, __m256bh, __m256bh); |
| _mm256_dpbusd_avx_epi32 | vpdpbusd | VPDPBUSD __m256i _mm256_dpbusd_avx_epi32(__m256i, __m256i, __m256i); |
| _mm256_dpbusd_epi32 | vpdpbusd | VPDPBUSD __m256i _mm256_dpbusd_epi32(__m256i, __m256i, __m256i); |
| _mm256_dpbusds_avx_epi32 | vpdpbusds | VPDPBUSDS __m256i _mm256_dpbusds_avx_epi32(__m256i, __m256i, __m256i); |
| _mm256_dpbusds_epi32 | vpdpbusds | VPDPBUSDS __m256i _mm256_dpbusds_epi32(__m256i, __m256i, __m256i); |
| _mm256_dpwssd_avx_epi32 | vpdpwssd | VPDPWSSD __m256i _mm256_dpwssd_avx_epi32(__m256i, __m256i, __m256i); |
| _mm256_dpwssd_epi32 | vpdpwssd | VPDPWSSD __m256i _mm256_dpwssd_epi32(__m256i, __m256i, __m256i); |
| _mm256_dpwssds_avx_epi32 | vpdpwssds | VPDPWSSDS __m256i _mm256_dpwssds_avx_epi32(__m256i, __m256i, __m256i); |
| _mm256_extractf128_pd | vextractf128 | VEXTRACTF128 __m128d _mm256_extractf128_pd (__m256d a, int offset); |
| _mm256_extractf128_ps | vextractf128 | VEXTRACTF128 __m128 _mm256_extractf128_ps (__m256 a, int offset); |
| _mm256_extractf128_si256 | vextractf128 | VEXTRACTF128 __m128i_mm256_extractf128_si256(__m256i a, int offset); |
| _mm256_extractf32x4_ps | vexpandps | VEXTRACTF32x4 __m128 _mm256_extractf32x4_ps(__m256 a, const int nidx); |
| _mm256_extractf64x2_pd | vexpandps | VEXTRACTF64x2 __m128d _mm256_extractf64x2_pd(__m256d a, const int nidx); |
| _mm256_extracti128_si256 | vextracti128 | VEXTRACTI128 __m128i _mm256_extracti128_si256(__m256i a, int offset); |
| _mm256_extracti32x4_epi32 | vextracti128 | VEXTRACTI32x4 __m128i _mm256_extracti32x4_epi32(__m256i a, const int nidx); |
| _mm256_extracti64x2_epi64 | vextracti128 | VEXTRACTI64x2 __m128i _mm256_extracti64x2_epi64(__m256i a, const int nidx); |
| _mm256_fcmadd_pch | vfcmaddcph | VFCMADDCPH __m256h _mm256_fcmadd_pch (__m256h a, __m256h b, __m256h c); |
| _mm256_fixupimm_pd | vfixupimmpd | VFIXUPIMMPD __m256d _mm256_fixupimm_pd( __m256d a, m256d b, __m256i c, int imm8); |
| _mm256_fixupimm_ps | vfixupimmps | VFIXUPIMMPS __m256 _mm256_fixupimm_ps( __m256 a, __m256 b, __m256i c, int imm8); |
| _mm256_floor_pd | roundpd | __m256 _mm256_floor_pd(__m256d s1); |
| _mm256_floor_ps | roundps | __m256 _mm256_floor_ps(__m256 s1); |
| _mm256_fmadd_pch | vfmaddcph | VFMADDCPH __m256h _mm256_fmadd_pch (__m256h a, __m256h b, __m256h c); |
| _mm256_fmadd_ph | vfmadd132ph | __m256h _mm256_fmadd_ph (__m256h a, __m256h b, __m256h c); |
| _mm256_fmadd_ps | vfmadd231ps | VFMADDxxxPS __m256 _mm256_fmadd_ps (__m256 a, __m256 b, __m256 c); |