x86 Compiler Intrinsics
3623 intrinsics from the Intel® SDM, each mapped to the instruction it compiles to - page 21 of 37, alphabetical. The global search in the top nav also matches intrinsic names directly.
| Intrinsic | Instruction | Signature |
|---|---|---|
| _mm512_maskz_sqrt_round_ph | vsqrtph | VSQRTPH __m512h _mm512_maskz_sqrt_round_ph (__mmask32 k, __m512h a, const int rounding); |
| _mm512_maskz_sqrt_round_ps | sqrtps | VSQRTPS __m512 _mm512_maskz_sqrt_round_ps( __mmask16 k, __m512 a, int r); |
| _mm512_maskz_sra_epi16 | psraw | VPSRAW __m512i _mm512_maskz_sra_epi16( __mmask16 k, __m512i a, __m128i cnt); |
| _mm512_maskz_sra_epi32 | psraw | VPSRAD __m512i _mm512_maskz_sra_epi32( __mmask16 k, __m512i a, __m128i cnt); |
| _mm512_maskz_sra_epi64 | psraw | VPSRAQ __m512i _mm512_maskz_sra_epi64( __mmask8 k, __m512i a, __m128i cnt) |
| _mm512_maskz_srai_epi16 | psraw | VPSRAW __m512i _mm512_maskz_srai_epi16( __mmask32 k, __m512i a, unsigned int imm); |
| _mm512_maskz_srai_epi32 | psraw | VPSRAD __m512i _mm512_maskz_srai_epi32( __mmask16 k, __m512i a, unsigned int imm); |
| _mm512_maskz_srai_epi64 | psraw | VPSRAQ __m512i _mm512_maskz_srai_epi64( __mmask8 k, __m512i a, unsigned int imm) |
| _mm512_maskz_srav_epi16 | vpsravd | VPSRAVW __m512i _mm512_maskz_srav_epi16(__mmask32 m, __m512i a, __m512i cnt); |
| _mm512_maskz_srav_epi32 | vpsravd | VPSRAVD __m512i _mm512_maskz_srav_epi32(__mmask16 m, __m512i a, __m512i cnt); |
| _mm512_maskz_srav_epi64 | vpsravq | VPSRAVQ __m512i _mm512_maskz_srav_epi64( __mmask8 m, __m512i a, __m512i cnt); |
| _mm512_maskz_srl_epi16 | psrlw | VPSRLW __m512i _mm512_maskz_srl_epi16( __mmask32 k, __m512i a, __m128i cnt); |
| _mm512_maskz_srl_epi32 | psrlw | VPSRLD __m512i _mm512_maskz_srl_epi32( __mmask16 k, __m512i a, __m128i cnt); |
| _mm512_maskz_srli_epi16 | psrlw | VPSRLW __m512i _mm512_maskz_srli_epi16( __mmask32 k, __m512i a, unsigned int imm); |
| _mm512_maskz_srli_epi32 | psrlw | VPSRLD __m512i _mm512_maskz_srli_epi32( __mmask16 k, __m512i a, unsigned int imm); |
| _mm512_maskz_srlv_epi16 | vpsrlvd | VPSRLVW __m512i _mm512_maskz_srlv_epi16( __mmask32 k, __m512i a, __m512i cnt); |
| _mm512_maskz_srlv_epi32 | vpsrlvd | VPSRLVD __m512i _mm512_maskz_srlv_epi32( __mmask16 k, __m512i a, __m512i cnt); |
| _mm512_maskz_srlv_epi64 | vpsrlvq | VPSRLVQ __m512i _mm512_maskz_srlv_epi64( __mmask8 k, __m512i a, __m512i cnt); |
| _mm512_maskz_sub_epi16 | psubb | VPSUBW __m512i _mm512_maskz_sub_epi16( __mmask32 k, __m512i a, __m512i b); |
| _mm512_maskz_sub_epi32 | vpsubd | VPSUBD __m512i _mm512_maskz_sub_epi32( __mmask16 k, __m512i a, __m512i b); |
| _mm512_maskz_sub_epi64 | psubq | VPSUBQ __m512i _mm512_maskz_sub_epi64( __mmask8 k, __m512i a, __m512i b); |
| _mm512_maskz_sub_epi8 | psubb | VPSUBB __m512i _mm512_maskz_sub_epi8( __mmask64 k, __m512i a, __m512i b); |
| _mm512_maskz_sub_pd | subpd | VSUBPD __m512d _mm512_maskz_sub_pd (__mmask8 k, __m512d a, __m512d b); |
| _mm512_maskz_sub_ph | vsubph | VSUBPH __m512h _mm512_maskz_sub_ph (__mmask32 k, __m512h a, __m512h b); |
| _mm512_maskz_sub_ps | subps | VSUBPS __m512 _mm512_maskz_sub_ps (__mmask16 k, __m512 a, __m512 b); |
| _mm512_maskz_sub_round_pd | subpd | VSUBPD __m512d _mm512_maskz_sub_round_pd (__mmask8 k, __m512d a, __m512d b, int); |
| _mm512_maskz_sub_round_ph | vsubph | VSUBPH __m512h _mm512_maskz_sub_round_ph (__mmask32 k, __m512h a, __m512h b, int rounding); |
| _mm512_maskz_sub_round_ps | subps | VSUBPS __m512 _mm512_maskz_sub_round_ps (__mmask16 k, __m512 a, __m512 b, int); |
| _mm512_maskz_subs_epi16 | psubsb | VPSUBSW __m512i _mm512_maskz_subs_epi16( __mmask32 k, __m512i a, __m512i b); |
| _mm512_maskz_subs_epi8 | psubsb | VPSUBSB __m512i _mm512_maskz_subs_epi8( __mmask64 k, __m512i a, __m512i b); |
| _mm512_maskz_subs_epu16 | psubusb | VPSUBUSW __m512i _mm512_maskz_subs_epu16( __mmask32 k, __m512i a, __m512i b); |
| _mm512_maskz_subs_epu8 | psubusb | VPSUBUSB __m512i _mm512_maskz_subs_epu8( __mmask64 k, __m512i a, __m512i b); |
| _mm512_maskz_ternarylogic_epi32 | vpternlogd | VPTERNLOGD __m512i _mm512_maskz_ternarylogic_epi32(__mmask m, __m512i a, __m512i b, int imm); |
| _mm512_maskz_ternarylogic_epi64 | vpternlogq | VPTERNLOGQ __m512i _mm512_maskz_ternarylogic_epi64( __mmask8 m, __m512i a, __m512i b, int imm); |
| _mm512_maskz_unpackhi_epi16 | punpckhbw | VPUNPCKHWD __m512i _mm512_maskz_unpackhi_epi16( __mmask32 k, __m512i a, __m512i b); |
| _mm512_maskz_unpackhi_epi32 | punpckhbw | VPUNPCKHDQ __m512i _mm512_maskz_unpackhi_epi32( __mmask16 k, __m512i a, __m512i b); |
| _mm512_maskz_unpackhi_epi64 | punpckhbw | VPUNPCKHQDQ __m512i _mm512_maskz_unpackhi_epi64( __mmask8 k, __m512i a, __m512i b); |
| _mm512_maskz_unpackhi_epi8 | punpckhbw | VPUNPCKHBW __m512i _mm512_maskz_unpackhi_epi8( __mmask64 k, __m512i a, __m512i b); |
| _mm512_maskz_unpackhi_pd | unpckhpd | VUNPCKHPD __m512d _mm512_maskz_unpackhi_pd(__mmask8 k, __m512d a, __m512d b); |
| _mm512_maskz_unpackhi_ps | unpckhps | VUNPCKHPS __m512 _mm512_maskz_unpackhi_ps(__mmask16 k, __m512 a, __m512 b); |
| _mm512_maskz_unpacklo_epi16 | punpcklbw | VPUNPCKLWD __m512i _mm512_maskz_unpacklo_epi16( __mmask32 k, __m512i a, __m512i b); |
| _mm512_maskz_unpacklo_epi32 | punpcklbw | VPUNPCKLDQ __m512i _mm512_maskz_unpacklo_epi32( __mmask16 k, __m512i a, __m512i b); |
| _mm512_maskz_unpacklo_epi64 | punpcklbw | VPUNPCKLQDQ __m512i _mm512_maskz_unpacklo_epi64( __mmask8 k, __m512i a, __m512i b); |
| _mm512_maskz_unpacklo_epi8 | punpcklbw | VPUNPCKLBW __m512i _mm512_maskz_unpacklo_epi8( __mmask64 k, __m512i a, __m512i b); |
| _mm512_maskz_unpacklo_pd | unpcklpd | VUNPCKLPD __m512d _mm512_maskz_unpacklo_pd(__mmask8 k, __m512d a, __m512d b); |
| _mm512_maskz_unpacklo_ps | unpcklps | VUNPCKLPS __m512 _mm512_maskz_unpacklo_ps(__mmask16 k, __m512 a, __m512 b); |
| _mm512_maskz_xor_epi32 | pxor | VPXORD __m512i _mm512_maskz_xor_epi32( __mmask16 m, __m512i a, __m512i b) |
| _mm512_maskz_xor_epi64 | pxor | VPXORQ __m512i _mm512_maskz_xor_epi64(__mmask8 m, __m512i a, __m512i b); |
| _mm512_maskz_xor_ps | xorps | VXORPS __m512 _mm512_maskz_xor_ps (__mmask16 m, __m512 a); |
| _mm512_max_epi16 | pmaxsb | VPMAXSW __m512i _mm512_max_epi16( __m512i a, __m512i b); |
| _mm512_max_epi32 | pmaxsb | VPMAXSD __m512i _mm512_max_epi32( __m512i a, __m512i b); |
| _mm512_max_epi64 | vpmaxsq | VPMAXSQ __m512i _mm512_max_epi64( __m512i a, __m512i b); |
| _mm512_max_epi8 | pmaxsb | VPMAXSB __m512i _mm512_max_epi8( __m512i a, __m512i b); |
| _mm512_max_epu16 | pmaxuw | VPMAXUW __m512i _mm512_max_epu16( __m512i a, __m512i b); |
| _mm512_max_epu32 | pmaxud | VPMAXUD __m512i _mm512_max_epu32( __m512i a, __m512i b); |
| _mm512_max_epu64 | vpmaxuq | VPMAXUQ __m512i _mm512_max_epu64( __m512i a, __m512i b); |
| _mm512_max_epu8 | pmaxuw | VPMAXUB __m512i _mm512_max_epu8( __m512i a, __m512i b); |
| _mm512_max_ph | vmaxph | VMAXPH __m512h _mm512_max_ph (__m512h a, __m512h b); |
| _mm512_max_ps | maxps | VMAXPS __m512 _mm512_max_ps( __m512 a, __m512 b); |
| _mm512_max_round_ph | vmaxph | VMAXPH __m512h _mm512_max_round_ph (__m512h a, __m512h b, int sae); |
| _mm512_max_round_ps | maxps | VMAXPS __m512 _mm512_max_round_ps( __m512 a, __m512 b, int); |
| _mm512_min_epi16 | pminsb | VPMINSW __m512i _mm512_min_epi16( __m512i a, __m512i b); |
| _mm512_min_epi32 | pminsd | VPMINSD __m512i _mm512_min_epi32( __m512i a, __m512i b); |
| _mm512_min_epi64 | vpminsq | VPMINSQ __m512i _mm512_min_epi64( __m512i a, __m512i b); |
| _mm512_min_epi8 | pminsb | VPMINSB __m512i _mm512_min_epi8( __m512i a, __m512i b); |
| _mm512_min_epu16 | pminuw | VPMINUW __m512i _mm512_min_epu16( __m512i a, __m512i b); |
| _mm512_min_epu32 | pminud | VPMINUD __m512i _mm512_min_epu32( __m512i a, __m512i b); |
| _mm512_min_epu64 | vpminuq | VPMINUQ __m512i _mm512_min_epu64( __m512i a, __m512i b); |
| _mm512_min_epu8 | pminuw | VPMINUB __m512i _mm512_min_epu8( __m512i a, __m512i b); |
| _mm512_min_ph | vminph | VMINPH __m512h _mm512_min_ph (__m512h a, __m512h b); |
| _mm512_min_ps | minps | VMINPS __m512 _mm512_min_ps( __m512 a, __m512 b); |
| _mm512_min_round_ph | vminph | VMINPH __m512h _mm512_min_round_ph (__m512h a, __m512h b, int sae); |
| _mm512_min_round_ps | minps | VMINPS __m512 _mm512_min_round_ps( __m512 a, __m512 b, int); |
| _mm512_movedup_pd | movddup | VMOVDDUP __m512d _mm512_movedup_pd( __m512d a); |
| _mm512_movehdup_ps | movshdup | VMOVSHDUP __m512 _mm512_movehdup_ps( __m512 a); |
| _mm512_moveldup_ps | movsldup | VMOVSLDUP __m512 _mm512_moveldup_ps( __m512 a); |
| _mm512_movepi16_mask | vpmovb2m | VPMPOVW2M __mmask32 _mm512_movepi16_mask( __m512i ); |
| _mm512_movepi32_mask | vpmovb2m | VPMPOVD2M __mmask16 _mm512_movepi32_mask( __m512i ); |
| _mm512_movepi64_mask | vpmovb2m | VPMPOVQ2M __mmask8 _mm512_movepi64_mask( __m512i ); |
| _mm512_movepi8_mask | vpmovb2m | VPMPOVB2M __mmask64 _mm512_movepi8_mask( __m512i ); |
| _mm512_movm_epi16 | vpmovm2w | VPMOVM2W __m512i _mm512_movm_epi16(__mmask32 ); |
| _mm512_movm_epi32 | vpmovm2d | VPMOVM2D __m512i _mm512_movm_epi32(__mmask8 ); |
| _mm512_movm_epi64 | vpmovm2q | VPMOVM2Q __m512i _mm512_movm_epi64(__mmask16 ); |
| _mm512_movm_epi8 | vpmovm2b | VPMOVM2B __m512i _mm512_movm_epi8(__mmask64 ); |
| _mm512_mul_epu32 | pmuludq | VPMULUDQ __m512i _mm512_mul_epu32(__m512i a, __m512i b); |
| _mm512_mul_pd | mulpd | VMULPD __m512d _mm512_mul_pd( __m512d a, __m512d b); |
| _mm512_mul_ph | vmulph | VMULPH __m512h _mm512_mul_ph (__m512h a, __m512h b); |
| _mm512_mul_ps | vmulps | VMULPS __m512 _mm512_mul_ps( __m512 a, __m512 b); |
| _mm512_mul_round_pd | mulpd | VMULPD __m512d _mm512_mul_round_pd( __m512d a, __m512d b, int); |
| _mm512_mul_round_ph | vmulph | VMULPH __m512h _mm512_mul_round_ph (__m512h a, __m512h b, int rounding); |
| _mm512_mul_round_ps | vmulps | VMULPS __m512 _mm512_mul_round_ps( __m512 a, __m512 b, int); |
| _mm512_mulhi_epi16 | pmulhw | VPMULHW __m512i _mm512_mulhi_epi16(__m512i a, __m512i b); |
| _mm512_mulhi_epu16 | pmulhuw | VPMULHUW __m512i _mm512_mulhi_epu16(__m512i a, __m512i b); |
| _mm512_mulhrs_epi16 | pmulhrsw | VPMULHRSW __m512i _mm512_mulhrs_epi16(__m512i a, __m512i b); |
| _mm512_mullo_epi16 | pmullw | VPMULLW __m512i _mm512_mullo_epi16(__m512i a, __m512i b); |
| _mm512_mullo_epi32 | vpmulld | VPMULLD __m512i _mm512_mullo_epi32(__m512i a, __m512i b); |
| _mm512_mullo_epi64 | vpmullq | VPMULLQ __m512i _mm512_mullo_epi64(__m512i a, __m512i b); |
| _mm512_multishift_epi64_epi8 | vpmultishiftqb | VPMULTISHIFTQB __m512i _mm512_multishift_epi64_epi8( __m512i a, __m512i b); |
| _mm512_or_epi32 | por | VPORD __m512i _mm512_or_epi32(__m512i a, __m512i b); |
| _mm512_or_epi64 | por | VPORQ __m512i _mm512_or_epi64(__m512i a, __m512i b); |