x86 Compiler Intrinsics
3623 intrinsics from the Intel® SDM, each mapped to the instruction it compiles to - page 33 of 37, alphabetical. The global search in the top nav also matches intrinsic names directly.
| Intrinsic | Instruction | Signature |
|---|---|---|
| _mm_maskz_shuffle_epi32 | pshufd | VPSHUFD __m128i _mm_maskz_shuffle_epi32( __mmask8 k, __m128i a, int n ); |
| _mm_maskz_shuffle_epi8 | vpshufb | VPSHUFB __m128i _mm_maskz_shuffle_epi8( __mmask16 k, __m128i a, __m128i b); |
| _mm_maskz_shuffle_pd | shufpd | VSHUFPD __m128d _mm_maskz_shuffle_pd( __mmask8 k, __m128d a, __m128d b, int imm); |
| _mm_maskz_shuffle_ps | shufps | VSHUFPS __m128 _mm_maskz_shuffle_ps(__mmask8 k, __m128 a, __m128 b, int imm); |
| _mm_maskz_shufflehi_epi16 | pshufhw | VPSHUFHW __m128i _mm_maskz_shufflehi_epi16( __mmask8 k, __m128i a, int n ); |
| _mm_maskz_shufflelo_epi16 | pshuflw | VPSHUFLW __m128i _mm_maskz_shufflelo_epi16( __mmask8 k, __m128i a, int n ); |
| _mm_maskz_sll_epi16 | psllw | VPSLLW __m128i _mm_maskz_sll_epi16( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sll_epi32 | psllw | VPSLLD __m128i _mm_maskz_sll_epi32( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sll_epi64 | psllw | VPSLLQ __m128i _mm_maskz_sll_epi64( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_slli_epi16 | psllw | VPSLLW __m128i _mm_maskz_slli_epi16( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_slli_epi32 | psllw | VPSLLD __m128i _mm_maskz_slli_epi32( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_slli_epi64 | psllw | VPSLLQ __m128i _mm_maskz_slli_epi64( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_sllv_epi16 | vpsllvd | VPSLLVW __m128i _mm_maskz_sllv_epi16( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sllv_epi32 | vpsllvd | VPSLLVD __m128i _mm_maskz_sllv_epi32( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sllv_epi64 | vpsllvd | VPSLLVD __m128i _mm_maskz_sllv_epi64( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sqrt_pd | sqrtpd | VSQRTPD __m128d _mm_maskz_sqrt_pd( __mmask8 k, __m128d a, int r); |
| _mm_maskz_sqrt_ph | vsqrtph | VSQRTPH __m128h _mm_maskz_sqrt_ph (__mmask8 k, __m128h a); |
| _mm_maskz_sqrt_ps | sqrtps | VSQRTPS __m128 _mm_maskz_sqrt_ps( __mmask8 k, __m128 a, int r); |
| _mm_maskz_sqrt_round_sd | sqrtsd | VSQRTSD __m128d _mm_maskz_sqrt_round_sd(__mmask8 k, __m128d a, __m128d b, int r); |
| _mm_maskz_sqrt_round_sh | vsqrtsh | VSQRTSH __m128h _mm_maskz_sqrt_round_sh (__mmask8 k, __m128h a, __m128h b, const int rounding); |
| _mm_maskz_sqrt_round_ss | sqrtss | VSQRTSS __m128 _mm_maskz_sqrt_round_ss( __mmask8 k, __m128 a, __m128 b, int r); |
| _mm_maskz_sqrt_sh | vsqrtsh | VSQRTSH __m128h _mm_maskz_sqrt_sh (__mmask8 k, __m128h a, __m128h b); |
| _mm_maskz_sra_epi16 | psraw | VPSRAW __m128i _mm_maskz_sra_epi16( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sra_epi32 | psraw | VPSRAD __m128i _mm_maskz_sra_epi32( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sra_epi64 | psraw | VPSRAQ __m128i _mm_maskz_sra_epi64( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_srai_epi16 | psraw | VPSRAW __m128i _mm_maskz_srai_epi16( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_srai_epi32 | psraw | VPSRAD __m128i _mm_maskz_srai_epi32( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_srai_epi64 | psraw | VPSRAQ __m128i _mm_maskz_srai_epi64( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_srav_epi32 | vpsravd | VPSRAVD __m128i _mm_maskz_srav_epi32(__mmask8 m, __m128i a, __m128i cnt); |
| _mm_maskz_srav_epi64 | vpsravq | VPSRAVQ __m128i _mm_maskz_srav_epi64( __mmask8 m, __m128i a, __m128i cnt); |
| _mm_maskz_srl_epi16 | psrlw | VPSRLW __m128i _mm_maskz_srl_epi16( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_srl_epi32 | psrlw | VPSRLD __m128i _mm_maskz_srl_epi32( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_srl_epi64 | psrlw | VPSRLQ __m128i _mm_maskz_srl_epi64( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_srli_epi16 | psrlw | VPSRLW __m128i _mm_maskz_srli_epi16( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_srli_epi32 | psrlw | VPSRLD __m128i _mm_maskz_srli_epi32( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_srli_epi64 | psrlw | VPSRLQ __m128i _mm_maskz_srli_epi64( __mmask8 k, __m128i a, unsigned int imm); |
| _mm_maskz_srlv_epi16 | vpsrlvd | VPSRLVW __m128i _mm_maskz_srlv_epi16( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_srlv_epi32 | vpsrlvd | VPSRLVD __m128i _mm_maskz_srlv_epi32( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_srlv_epi64 | vpsrlvq | VPSRLVQ __m128i _mm_maskz_srlv_epi64( __mmask8 k, __m128i a, __m128i cnt); |
| _mm_maskz_sub_epi16 | psubb | VPSUBW __m128i _mm_maskz_sub_epi16( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_sub_epi32 | vpsubd | VPSUBD __m128i _mm_maskz_sub_epi32( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_sub_epi64 | psubq | VPSUBQ __m128i _mm_maskz_sub_epi64( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_sub_epi8 | psubb | VPSUBB __m128i _mm_maskz_sub_epi8( __mmask16 k, __m128i a, __m128i b); |
| _mm_maskz_sub_pd | subpd | VSUBPD __m128d _mm_maskz_sub_pd (__mmask8 k, __m128d a, __m128d b); |
| _mm_maskz_sub_ph | vsubph | VSUBPH __m128h _mm_maskz_sub_ph (__mmask8 k, __m128h a, __m128h b); |
| _mm_maskz_sub_ps | subps | VSUBPS __m128 _mm_maskz_sub_ps (__mmask16 k, __m128 a, __m128 b); |
| _mm_maskz_sub_round_sd | subsd | VSUBSD __m128d _mm_maskz_sub_round_sd (__mmask8 k, __m128d a, __m128d b, int); |
| _mm_maskz_sub_round_sh | vsubsh | VSUBSH __m128h _mm_maskz_sub_round_sh (__mmask8 k, __m128h a, __m128h b, int rounding); |
| _mm_maskz_sub_round_ss | subss | VSUBSS __m128 _mm_maskz_sub_round_ss (__mmask8 k, __m128 a, __m128 b, int); |
| _mm_maskz_sub_sd | subsd | VSUBSD __m128d _mm_maskz_sub_sd (__mmask8 k, __m128d a, __m128d b); |
| _mm_maskz_sub_sh | vsubsh | VSUBSH __m128h _mm_maskz_sub_sh (__mmask8 k, __m128h a, __m128h b); |
| _mm_maskz_sub_ss | subss | VSUBSS __m128 _mm_maskz_sub_ss (__mmask8 k, __m128 a, __m128 b); |
| _mm_maskz_subs_epi16 | psubsb | VPSUBSW __m128i _mm_maskz_subs_epi16( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_subs_epi8 | psubsb | VPSUBSB __m128i _mm_maskz_subs_epi8( __mmask16 k, __m128i a, __m128i b); |
| _mm_maskz_subs_epu16 | psubusb | VPSUBUSW __m128i _mm_maskz_subs_epu16( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_subs_epu8 | psubusb | VPSUBUSB __m128i _mm_maskz_subs_epu8( __mmask16 k, __m128i a, __m128i b); |
| _mm_maskz_ternarylogic_epi32 | vpternlogd | VPTERNLOGD __m128i _mm_maskz_ternarylogic_epi32( __mmask8 m, __m128i a, __m128i b, int imm); |
| _mm_maskz_ternarylogic_epi64 | vpternlogq | VPTERNLOGQ __m128i _mm_maskz_ternarylogic_epi64( __mmask8 m, __m128i a, __m128i b, int imm); |
| _mm_maskz_unpackhi_epi16 | punpckhbw | VPUNPCKHWD __m128i _mm_maskz_unpackhi_epi16( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_unpackhi_epi32 | punpckhbw | VPUNPCKHDQ __m128i _mm_maskz_unpackhi_epi32( __mmask8 k, __m512i a, __m512i b); |
| _mm_maskz_unpackhi_epi64 | punpckhbw | VPUNPCKHQDQ __m128i _mm_maskz_unpackhi_epi64( __mmask8 k, __m512i a, __m512i b); |
| _mm_maskz_unpackhi_epi8 | punpckhbw | VPUNPCKHBW __m128i _mm_maskz_unpackhi_epi8( __mmask16 k, __m128i a, __m128i b); |
| _mm_maskz_unpackhi_pd | unpckhpd | VUNPCKHPD __m128d _mm_maskz_unpackhi_pd(__mmask8 k, __m128d a, __m128d b); |
| _mm_maskz_unpackhi_ps | unpckhps | VUNPCKHPS __m128 _mm_maskz_unpackhi_ps(__mmask8 k, __m128 a, __m128 b); |
| _mm_maskz_unpacklo_epi16 | punpcklbw | VPUNPCKLWD __m128i _mm_maskz_unpacklo_epi16( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_unpacklo_epi32 | punpcklbw | VPUNPCKLDQ __m128i _mm_maskz_unpacklo_epi32( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_unpacklo_epi64 | punpcklbw | VPUNPCKLQDQ __m128i _mm_maskz_unpacklo_epi64( __mmask8 k, __m128i a, __m128i b); |
| _mm_maskz_unpacklo_epi8 | punpcklbw | VPUNPCKLBW __m128i _mm_maskz_unpacklo_epi8( __mmask16 k, __m128i a, __m128i b); |
| _mm_maskz_unpacklo_pd | unpcklpd | VUNPCKLPD __m128d _mm_maskz_unpacklo_pd(__mmask8 k, __m128d a, __m128d b); |
| _mm_maskz_unpacklo_ps | unpcklps | VUNPCKLPS __m128 _mm_maskz_unpacklo_ps(__mmask8 k, __m128 a, __m128 b); |
| _mm_maskz_xor_epi32 | pxor | VPXORD __m128i _mm_maskz_xor_epi32( __mmask16 m, __m128i a, __m128i b) |
| _mm_maskz_xor_epi64 | pxor | VPXORQ __m128i _mm_maskz_xor_epi64(__mmask8 m, __m128i a, __m128i b); |
| _mm_maskz_xor_ps | xorps | VXORPS __m128 _mm_maskz_xor_ps (__mmask8 m, __m128 a); |
| _mm_max_epi16 | pmaxsb | (V)PMAXSW __m128i _mm_max_epi16 ( __m128i a, __m128i b) |
| _mm_max_epi32 | pmaxsb | (V)PMAXSD __m128i _mm_max_epi32 ( __m128i a, __m128i b); |
| _mm_max_epi8 | pmaxsb | (V)PMAXSB __m128i _mm_max_epi8 ( __m128i a, __m128i b); |
| _mm_max_epu16 | pmaxuw | (V)PMAXUW __m128i _mm_max_epu16 ( __m128i a, __m128i b) |
| _mm_max_epu32 | pmaxud | (V)PMAXUD __m128i _mm_max_epu32 ( __m128i a, __m128i b); |
| _mm_max_epu8 | pmaxuw | (V)PMAXUB __m128i _mm_max_epu8 ( __m128i a, __m128i b); |
| _mm_max_ph | vmaxph | VMAXPH __m128h _mm_max_ph (__m128h a, __m128h b); |
| _mm_max_pi16 | pmaxsb | PMAXSW:__m64 _mm_max_pi16(__m64 a, __m64 b) |
| _mm_max_ps | maxps | MAXPS __m128 _mm_max_ps (__m128 a, __m128 b); |
| _mm_max_pu8 | pmaxub | PMAXUB __m64 _mm_max_pu8(__m64 a, __m64 b); |
| _mm_max_round_sd | maxsd | VMAXSD __m128d _mm_max_round_sd( __m128d a, __m128d b, int); |
| _mm_max_round_ss | maxss | VMAXSS __m128 _mm_max_round_ss( __m128 a, __m128 b, int); |
| _mm_max_sd | maxsd | MAXSD __m128d _mm_max_sd(__m128d a, __m128d b) |
| _mm_max_ss | maxss | MAXSS __m128 _mm_max_ss(__m128 a, __m128 b) |
| _mm_mfence | mfence | void _mm_mfence(void) |
| _mm_min_epi16 | pminsb | (V)PMINSW __m128i _mm_min_epi16 ( __m128i a, __m128i b) |
| _mm_min_epi32 | pminsd | (V)PMINSD __m128i _mm_min_epi32 ( __m128i a, __m128i b); |
| _mm_min_epi8 | pminsb | (V)PMINSB __m128i _mm_min_epi8 ( __m128i a, __m128i b); |
| _mm_min_epu16 | pminuw | (V)PMINUW __m128i _mm_min_epu16 ( __m128i a, __m128i b); |
| _mm_min_epu32 | pminud | (V)PMINUD __m128i _mm_min_epu32 ( __m128i a, __m128i b); |
| _mm_min_epu8 | pminuw | (V)PMINUB __m128i _mm_min_epu8 ( __m128i a, __m128i b) |
| _mm_min_ph | vminph | VMINPH __m128h _mm_min_ph (__m128h a, __m128h b); |
| _mm_min_pi16 | pminsb | PMINSW__m64 _mm_min_pi16 (__m64 a, __m64 b) |
| _mm_min_ps | minps | MINPS __m128 _mm_min_ps (__m128 a, __m128 b); |
| _mm_min_round_sd | minsd | VMINSD __m128d _mm_min_round_sd(__m128d a, __m128d b, int); |
| _mm_min_round_ss | minss | VMINSS __m128 _mm_min_round_ss( __m128 a, __m128 b, int); |
| _mm_min_sd | minsd | MINSD __m128d _mm_min_sd(__m128d a, __m128d b) |