x86 Compiler Intrinsics
3623 intrinsics from the Intel® SDM, each mapped to the instruction it compiles to - page 3 of 37, alphabetical. The global search in the top nav also matches intrinsic names directly.
| Intrinsic | Instruction | Signature |
|---|---|---|
| _mm256_fmsub_ps | vfmsub132ps | VFMSUBxxxPS __m256 _mm256_fmsub_ps (__m256 a, __m256 b, __m256 c); |
| _mm256_fnmadd_ph | vfmadd132ph | __m256h _mm256_fnmadd_ph (__m256h a, __m256h b, __m256h c); |
| _mm256_fnmadd_ps | vfnmadd132ps | VFNMADDxxxPS __m256 _mm256_fnmadd_ps (__m256 a, __m256 b, __m256 c); |
| _mm256_fpclass_pd_mask | vfpclasspd | VFPCLASSPD __mmask8 _mm256_fpclass_pd_mask( __m256d a, int c) |
| _mm256_fpclass_ps_mask | vfpclassps | VFPCLASSPS __mmask8 _mm256_fpclass_ps_mask( __m256 a, int c) |
| _mm256_getexp_pd | vgetexppd | VGETEXPPD __m256d _mm256_getexp_pd(__m256d a); |
| _mm256_getmant_pd | vgetmantpd | VGETMANTPD __m256d _mm256_getmant_pd( __m256d a, enum intv, enum sgn); |
| _mm256_gf2p8affine_epi64_epi8 | gf2p8affineqb | VGF2P8AFFINEQB __m256i _mm256_gf2p8affine_epi64_epi8(__m256i, __m256i, int); |
| _mm256_gf2p8affineinv_epi64_epi8 | gf2p8affineinvqb | VGF2P8AFFINEINVQB __m256i _mm256_gf2p8affineinv_epi64_epi8(__m256i, __m256i, int); |
| _mm256_gf2p8mul_epi8 | gf2p8mulb | VGF2P8MULB __m256i _mm256_gf2p8mul_epi8(__m256i, __m256i); |
| _mm256_hadd_epi16 | phaddw | VPHADDW __m256i _mm256_hadd_epi16 (__m256i a, __m256i b) |
| _mm256_hadd_epi32 | phaddw | VPHADDD __m256i _mm256_hadd_epi32 (__m256i a, __m256i b) |
| _mm256_hadd_pd | haddpd | VHADDPD __m256d _mm256_hadd_pd (__m256d a, __m256d b); |
| _mm256_hadd_ps | haddps | VHADDPS __m256 _mm256_hadd_ps (__m256 a, __m256 b); |
| _mm256_hsub_epi16 | phsubw | VPHSUBW __m256i _mm256_hsub_epi16 (__m256i a, __m256i b) |
| _mm256_hsub_epi32 | phsubw | VPHSUBD __m256i _mm256_hsub_epi32 (__m256i a, __m256i b) |
| _mm256_hsub_pd | hsubpd | VHSUBPD __m256d _mm256_hsub_pd (__m256d a, __m256d b); |
| _mm256_hsub_ps | hsubps | VHSUBPS __m256 _mm256_hsub_ps (__m256 a, __m256 b); |
| _mm256_i32scatter_pd | vscatterdpd | VSCATTERDPD void _mm256_i32scatter_pd(void * base, __m256i vdx, __m256d a, int scale); |
| _mm256_i32scatter_ps | vscatterdps | VSCATTERDPS void _mm256_i32scatter_ps(void * base, __m256i vdx, __m256 a, int scale); |
| _mm256_i64scatter_pd | vscatterqpd | VSCATTERQPD void _mm256_i64scatter_pd(void * base, __m256i vdx, __m256d a, int scale); |
| _mm256_i64scatter_ps | vscatterqps | VSCATTERQPS void _mm256_i64scatter_ps(void * base, __m256i vdx, __m256 a, int scale); |
| _mm256_insertf128_pd | vinsertf128 | VINSERTF128 __m256d _mm256_insertf128_pd (__m256d a, __m128d b, int offset); |
| _mm256_insertf128_ps | vinsertf128 | VINSERTF128 __m256 _mm256_insertf128_ps (__m256 a, __m128 b, int offset); |
| _mm256_insertf128_si256 | vinsertf128 | VINSERTF128 __m256i _mm256_insertf128_si256 (__m256i a, __m128i b, int offset); |
| _mm256_insertf32x4 | vinsertf128 | VINSERTF32x4 __m256 _mm256_insertf32x4( __m256 a, __m128 b, int imm); |
| _mm256_insertf64x2 | vinsertf128 | VINSERTF64x2 __m256d _mm256_insertf64x2( __m256d a, __m128d b, int imm); |
| _mm256_inserti32x4 | vinserti128 | VINSERTI32x4 __m256i _mm256_inserti32x4( __m256i a, __m128i b, int imm); |
| _mm256_inserti64x2 | vinserti128 | VINSERTI64x2 __m256i _mm256_inserti64x2( __m256i a, __m128i b, int imm); |
| _mm256_lddqu_si256 | lddqu | VLDDQU __m256i _mm256_lddqu_si256 (__m256i * p); |
| _mm256_load_pd | movapd | MOVAPD __m256d _mm256_load_pd (double * p); |
| _mm256_load_ps | movaps | MOVAPS __m256 _mm256_load_ps (float * p); |
| _mm256_load_si256 | movdqa | MOVDQA void __m256i _mm256_load_si256 (__m256i * p); |
| _mm256_loadu_pd | movupd | MOVUPD __m256d _mm256_loadu_pd (double * p); |
| _mm256_loadu_ps | movups | MOVUPS __m256 _mm256_loadu_ps ( float * p); |
| _mm256_loadu_si256 | movdqu | MOVDQU __m256i _mm256_loadu_si256 (__m256i * p); |
| _mm256_lzcnt_epi32 | vplzcntd | VPLZCNTD __m256i _mm256_lzcnt_epi32(__m256i a); |
| _mm256_lzcnt_epi64 | vplzcntq | VPLZCNTQ __m256i _mm256_lzcnt_epi64(__m256i a); |
| _mm256_madd52hi_avx_epu64 | vpmadd52huq | VPMADD52HUQ __m256i _mm256_madd52hi_avx_epu64 (__m256i __X, __m256i __Y, __m256i __Z); |
| _mm256_madd52hi_epu64 | vpmadd52huq | VPMADD52HUQ __m256i _mm256_madd52hi_epu64( __m256i a, __m256i b, __m256i c); |
| _mm256_madd52lo_avx_epu64 | vpmadd52luq | VPMADD52LUQ __m256i _mm256_madd52lo_avx_epu64 (__m256i __X, __m256i __Y, __m256i __Z); |
| _mm256_madd52lo_epu64 | vpmadd52luq | VPMADD52LUQ __m256i _mm256_madd52lo_epu64( __m256i a, __m256i b, __m256i c); |
| _mm256_madd_epi16 | pmaddwd | VPMADDWD __m256i _mm256_madd_epi16 ( __m256i a, __m256i b) |
| _mm256_maddubs_epi16 | pmaddubsw | VPMADDUBSW __m256i _mm256_maddubs_epi16 (__m256i a, __m256i b) |
| _mm256_mask2_permutex2var_epi16 | vpermi2q | VPERMI2W __m256i _mm256_mask2_permutex2var_epi16(__m256i a, __m256i idx, __mmask16 k, __m256i b); |
| _mm256_mask2_permutex2var_epi32 | vpermi2d | VPERMI2D __m256i _mm256_mask2_permutex2var_epi32(__m256i a, __m256i idx, __mmask8 k, __m256i b); |
| _mm256_mask2_permutex2var_epi64 | vpermi2q | VPERMI2Q __m256i _mm256_mask2_permutex2var_epi64(__m256i a, __m256i idx, __mmask8 k, __m256i b); |
| _mm256_mask2_permutex2var_epi8 | vpermi2b | VPERMI2B __m256i _mm256_mask2_permutex2var_epi8(__m256i a, __m256i idx, __mmask32 k, __m256i b); |
| _mm256_mask2_permutex2var_pd | vpermi2q | VPERMI2PD __m256d _mm256_mask2_permutex2var_pd(__m256d a, __m256i idx, __mmask8 k, __m256d b); |
| _mm256_mask2_permutex2var_ps | vpermi2q | VPERMI2PS __m256 _mm256_mask2_permutex2var_ps(__m256 a, __m256i idx, __mmask8 k, __m256 b); |
| _mm256_mask3_fcmadd_pch | vfcmaddcph | VFCMADDCPH __m256h _mm256_mask3_fcmadd_pch (__m256h a, __m256h b, __m256h c, __mmask8 k); |
| _mm256_mask3_fmadd_pch | vfmaddcph | VFMADDCPH __m256h _mm256_mask3_fmadd_pch (__m256h a, __m256h b, __m256h c, __mmask8 k); |
| _mm256_mask3_fmadd_ph | vfmadd132ph | __m256h _mm256_mask3_fmadd_ph (__m256h a, __m256h b, __m256h c, __mmask16 k); |
| _mm256_mask3_fmadd_ps | vfmadd231ps | VFMADDxxxPS __m256 _mm256_mask3_fmadd_ps(__m256 a, __m256 b, __m256 c, __mmask8 k); |
| _mm256_mask3_fmsub_ps | vfmsub132ps | VFMSUBxxxPS __m256 _mm256_mask3_fmsub_ps(__m256 a, __m256 b, __m256 c, __mmask8 k); |
| _mm256_mask3_fnmadd_ph | vfmadd132ph | __m256h _mm256_mask3_fnmadd_ph (__m256h a, __m256h b, __m256h c, __mmask16 k); |
| _mm256_mask3_fnmadd_ps | vfnmadd132ps | VFNMADDxxxPS __m256 _mm256_mask3_fnmadd_ps(__m256 a, __m256 b, __m256 c, __mmask8 k); |
| _mm256_mask_abs_epi16 | pabsb | VPABSW__m256i _mm256_mask_abs_epi16 (__m256i s, __mmask16 m, __m256i a) |
| _mm256_mask_abs_epi32 | vpabsd | VPABSD __m256i _mm256_mask_abs_epi32(__m256i s, __mmask8 k, __m256i a); |
| _mm256_mask_abs_epi64 | vpabsq | VPABSQ __m256i _mm256_mask_abs_epi64(__m256i s, __mmask8 k, __m256i a); |
| _mm256_mask_abs_epi8 | pabsb | VPABSB__m256i _mm256_mask_abs_epi8 (__m256i s, __mmask32 m, __m256i a) |
| _mm256_mask_add_epi16 | paddb | VPADDW__m256i _mm256_mask_add_epi16 (__m256i s, __mmask16 m, __m256i a, __m256i b) |
| _mm256_mask_add_epi32 | vpaddd | VPADDD __m256i _mm256_mask_add_epi32(__m256i s, __mmask8 k, __m256i a, __m256i b); |
| _mm256_mask_add_epi64 | paddb | VPADDQ __m256i _mm256_mask_add_epi64(__m256i s, __mmask8 k, __m256i a, __m256i b); |
| _mm256_mask_add_epi8 | paddb | VPADDB__m256i _mm256_mask_add_epi8 (__m256i s, __mmask32 m, __m256i a, __m256i b) |
| _mm256_mask_add_pd | addpd | VADDPD __m256d _mm256_mask_add_pd (__m256d s, __mmask8 k, __m256d a, __m256d b); |
| _mm256_mask_add_ph | vaddph | VADDPH __m256h _mm256_mask_add_ph (__m256h src, __mmask16 k, __m256h a, __m256h b); |
| _mm256_mask_add_ps | vaddps | VADDPS __m256 _mm256_mask_add_ps (__m256 s, __mmask8 k, __m256 a, __m256 b); |
| _mm256_mask_adds_epi16 | paddsb | VPADDSW __m256i _mm256_mask_adds_epi16 (__m256i s, __mmask16 m, __m256i a, __m256i b) |
| _mm256_mask_adds_epi8 | paddsb | VPADDSB __m256i _mm256_mask_adds_epi8 (__m256i s, __mmask32 m, __m256i a, __m256i b) |
| _mm256_mask_adds_epu16 | paddusb | VPADDUSW __m256i _mm256_mask_adds_epu16 (__m256i s, __mmask16 m, __m256i a, __m256i b) |
| _mm256_mask_adds_epu8 | paddusb | VPADDUSB __m256i _mm256_mask_adds_epu8 (__m256i s, __mmask32 m, __m256i a, __m256i b) |
| _mm256_mask_alignr_epi32 | valignd | VALIGND __m256i _mm256_mask_alignr_epi32(__m256i s, __mmask8 k, __m256i a, __m256i b, int cnt); |
| _mm256_mask_alignr_epi64 | valignq | VALIGNQ __m256i _mm256_mask_alignr_epi64(__m256i s, __mmask8 k, __m256i a, __m256i b, int cnt); |
| _mm256_mask_alignr_epi8 | palignr | VPALIGNR __m256i _mm256_mask_alignr_epi8 (__m256i s, __mmask32 m, __m256i a, __m256i b, const int n) |
| _mm256_mask_and_epi32 | pand | VPANDND __m256i _mm256_mask_and_epi32(__m256i s, __mmask8 k, __m256i a, __m256i b); |
| _mm256_mask_and_epi64 | pand | VPANDNQ __m256i _mm256_mask_and_epi64(__m256i s, __mmask8 k, __m256i a, __m256i b); |
| _mm256_mask_and_pd | andpd | VANDPD __m256d _mm256_mask_and_pd (__m256d s, __mmask8 k, __m256d a, __m256d b); |
| _mm256_mask_and_ps | andps | VANDPS __m256 _mm256_mask_and_ps (__m256 s, __mmask8 k, __m256 a, __m256 b); |
| _mm256_mask_andnot_epi32 | pandn | VPANDND __m256i _mm256_mask_andnot_epi32(__m256i s, __mmask8 k, __m256i a, __m256i b); |
| _mm256_mask_andnot_epi64 | pandn | VPANDNQ __m256i _mm256_mask_andnot_epi64(__m256i s, __mmask8 k, __m256i a, __m256i b); |
| _mm256_mask_avg_epu16 | pavgb | VPAVGW __m256i _mm256_mask_avg_epu16(__m256i s, __mmask16 m, __m256i a, __m256i b); |
| _mm256_mask_avg_epu8 | pavgb | VPAVGB __m256i _mm256_mask_avg_epu8(__m256i s, __mmask32 m, __m256i a, __m256i b); |
| _mm256_mask_bitshuffle_epi64_mask | vpshufbitqmb | VPSHUFBITQMB __mmask32 _mm256_mask_bitshuffle_epi64_mask(__mmask32, __m256i, __m256i); |
| _mm256_mask_broadcast_f32x2 | vbroadcastss | VBROADCASTF32x2 __m256 _mm256_mask_broadcast_f32x2(__m256 s, __mmask8 k, __m128 a); |
| _mm256_mask_broadcast_f32x4 | vbroadcastss | VBROADCASTF32x4 __m256 _mm256_mask_broadcast_f32x4(__m256 s, __mmask8 k, __m128 a); |
| _mm256_mask_broadcast_f64x2 | vbroadcastss | VBROADCASTF64x2 __m256d _mm256_mask_broadcast_f64x2(__m256d s, __mmask8 k, __m128d a); |
| _mm256_mask_broadcastsd_pd | vbroadcastsd | VBROADCASTSD __m256d _mm256_mask_broadcastsd_pd(__m256d s, __mmask8 k, __m128d a); |
| _mm256_mask_broadcastss_ps | vbroadcastss | VBROADCASTSS __m256 _mm256_mask_broadcastss_ps(__m256 s, __mmask8 k, __m128 a); |
| _mm256_mask_cmp_epi16_mask | vpcmpw | VPCMPW __mmask16 _mm256_mask_cmp_epi16_mask( __mmask16 m, __m256i a, __m256i b, int cmp); |
| _mm256_mask_cmp_epi32_mask | vpcmpd | VPCMPD __mmask8 _mm256_mask_cmp_epi32_mask(__mmask8 k, __m256i a, __m256i b, int imm); |
| _mm256_mask_cmp_epi64_mask | vpcmpq | VPCMPQ __mmask8 _mm256_mask_cmp_epi64_mask(__mmask8 k, __m256i a, __m256i b, int imm); |
| _mm256_mask_cmp_epi8_mask | vpcmpb | VPCMPB __mmask32 _mm256_mask_cmp_epi8_mask( __mmask32 m, __m256i a, __m256i b, int cmp); |
| _mm256_mask_cmp_epu16_mask | vpcmpuw | VPCMPUW __mmask16 _mm256_mask_cmp_epu16_mask( __mmask16 m, __m256i a, __m256i b, int cmp); |
| _mm256_mask_cmp_epu32_mask | vpcmpud | VPCMPUD __mmask8 _mm256_mask_cmp_epu32_mask(__mmask8 k, __m256i a, __m256i b, int imm); |
| _mm256_mask_cmp_epu64_mask | vpcmpuq | VPCMPUQ __mmask8 _mm256_mask_cmp_epu64_mask(__mmask8 k, __m256i a, __m256i b, int imm); |
| _mm256_mask_cmp_epu8_mask | vpcmpub | VPCMPUB __mmask32 _mm256_mask_cmp_epu8_mask( __mmask32 m, __m256i a, __m256i b, int cmp); |
| _mm256_mask_cmp_pd_mask | vcmppd | VCMPPD __mmask8 _mm256_mask_cmp_pd_mask( __mmask8 k1, __m256d a, __m256d b, int imm); |
| _mm256_mask_cmp_ps_mask | vcmpps | VCMPPS __mmask8 _mm256_mask_cmp_ps_mask( __mmask8 k1, __m256 a, __m256 b, int imm); |
| _mm256_mask_cmpeq_epi16_mask | pcmpeqb | VPCMPEQW __mmask16 _mm256_mask_cmpeq_epi16_mask(__mmask16 k, __m256i a, __m256i b); |