Available on x86 or x86-64 only.
Functions§
- _mm256_
mask_ compress_ epi8 avx512vbmi2
andavx512vl
- Contiguously store the active 8-bit integers in a (those with their respective bit set in writemask k) to dst, and pass through the remaining elements from src.
- _mm256_
mask_ compress_ epi16 avx512vbmi2
andavx512vl
- Contiguously store the active 16-bit integers in a (those with their respective bit set in writemask k) to dst, and pass through the remaining elements from src.
- _mm256_
mask_ ⚠compressstoreu_ epi8 avx512vbmi2
andavx512vl
- Contiguously store the active 8-bit integers in a (those with their respective bit set in writemask k) to unaligned memory at base_addr.
- _mm256_
mask_ ⚠compressstoreu_ epi16 avx512vbmi2
andavx512vl
- Contiguously store the active 16-bit integers in a (those with their respective bit set in writemask k) to unaligned memory at base_addr.
- _mm256_
mask_ expand_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from a (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ expand_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from a (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ ⚠expandloadu_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ ⚠expandloadu_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ shldi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ shldi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ shldi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ shldv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm256_
mask_ shldv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm256_
mask_ shldv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm256_
mask_ shrdi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ shrdi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm256_
mask_ shrdi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst using writemask k (elements are copied from src“ when the corresponding mask bit is not set).
- _mm256_
mask_ shrdv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm256_
mask_ shrdv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm256_
mask_ shrdv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm256_
maskz_ compress_ epi8 avx512vbmi2
andavx512vl
- Contiguously store the active 8-bit integers in a (those with their respective bit set in zeromask k) to dst, and set the remaining elements to zero.
- _mm256_
maskz_ compress_ epi16 avx512vbmi2
andavx512vl
- Contiguously store the active 16-bit integers in a (those with their respective bit set in zeromask k) to dst, and set the remaining elements to zero.
- _mm256_
maskz_ expand_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from a (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ expand_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from a (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ ⚠expandloadu_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ ⚠expandloadu_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shldi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shldi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shldi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shldv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shldv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shldv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shrdi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shrdi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shrdi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shrdv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shrdv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
maskz_ shrdv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm256_
shldi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst).
- _mm256_
shldi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst.
- _mm256_
shldi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst).
- _mm256_
shldv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst.
- _mm256_
shldv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst.
- _mm256_
shldv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst.
- _mm256_
shrdi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst.
- _mm256_
shrdi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst.
- _mm256_
shrdi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst.
- _mm256_
shrdv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst.
- _mm256_
shrdv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst.
- _mm256_
shrdv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst.
- _mm512_
mask_ compress_ epi8 avx512vbmi2
- Contiguously store the active 8-bit integers in a (those with their respective bit set in writemask k) to dst, and pass through the remaining elements from src.
- _mm512_
mask_ compress_ epi16 avx512vbmi2
- Contiguously store the active 16-bit integers in a (those with their respective bit set in writemask k) to dst, and pass through the remaining elements from src.
- _mm512_
mask_ ⚠compressstoreu_ epi8 avx512vbmi2
- Contiguously store the active 8-bit integers in a (those with their respective bit set in writemask k) to unaligned memory at base_addr.
- _mm512_
mask_ ⚠compressstoreu_ epi16 avx512vbmi2
- Contiguously store the active 16-bit integers in a (those with their respective bit set in writemask k) to unaligned memory at base_addr.
- _mm512_
mask_ expand_ epi8 avx512vbmi2
- Load contiguous active 8-bit integers from a (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ expand_ epi16 avx512vbmi2
- Load contiguous active 16-bit integers from a (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ ⚠expandloadu_ epi8 avx512vbmi2
- Load contiguous active 8-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ ⚠expandloadu_ epi16 avx512vbmi2
- Load contiguous active 16-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ shldi_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ shldi_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ shldi_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ shldv_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm512_
mask_ shldv_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm512_
mask_ shldv_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm512_
mask_ shrdi_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ shrdi_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm512_
mask_ shrdi_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst using writemask k (elements are copied from src“ when the corresponding mask bit is not set).
- _mm512_
mask_ shrdv_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm512_
mask_ shrdv_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm512_
mask_ shrdv_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm512_
maskz_ compress_ epi8 avx512vbmi2
- Contiguously store the active 8-bit integers in a (those with their respective bit set in zeromask k) to dst, and set the remaining elements to zero.
- _mm512_
maskz_ compress_ epi16 avx512vbmi2
- Contiguously store the active 16-bit integers in a (those with their respective bit set in zeromask k) to dst, and set the remaining elements to zero.
- _mm512_
maskz_ expand_ epi8 avx512vbmi2
- Load contiguous active 8-bit integers from a (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ expand_ epi16 avx512vbmi2
- Load contiguous active 16-bit integers from a (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ ⚠expandloadu_ epi8 avx512vbmi2
- Load contiguous active 8-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ ⚠expandloadu_ epi16 avx512vbmi2
- Load contiguous active 16-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shldi_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shldi_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shldi_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shldv_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shldv_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shldv_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shrdi_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shrdi_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shrdi_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shrdv_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shrdv_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
maskz_ shrdv_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm512_
shldi_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst).
- _mm512_
shldi_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst.
- _mm512_
shldi_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst).
- _mm512_
shldv_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst.
- _mm512_
shldv_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst.
- _mm512_
shldv_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst.
- _mm512_
shrdi_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst.
- _mm512_
shrdi_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst.
- _mm512_
shrdi_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst.
- _mm512_
shrdv_ epi16 avx512vbmi2
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst.
- _mm512_
shrdv_ epi32 avx512vbmi2
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst.
- _mm512_
shrdv_ epi64 avx512vbmi2
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst.
- _mm_
mask_ compress_ epi8 avx512vbmi2
andavx512vl
- Contiguously store the active 8-bit integers in a (those with their respective bit set in writemask k) to dst, and pass through the remaining elements from src.
- _mm_
mask_ compress_ epi16 avx512vbmi2
andavx512vl
- Contiguously store the active 16-bit integers in a (those with their respective bit set in writemask k) to dst, and pass through the remaining elements from src.
- _mm_
mask_ ⚠compressstoreu_ epi8 avx512vbmi2
andavx512vl
- Contiguously store the active 8-bit integers in a (those with their respective bit set in writemask k) to unaligned memory at base_addr.
- _mm_
mask_ ⚠compressstoreu_ epi16 avx512vbmi2
andavx512vl
- Contiguously store the active 16-bit integers in a (those with their respective bit set in writemask k) to unaligned memory at base_addr.
- _mm_
mask_ expand_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from a (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ expand_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from a (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ ⚠expandloadu_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ ⚠expandloadu_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ shldi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ shldi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ shldi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ shldv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm_
mask_ shldv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm_
mask_ shldv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm_
mask_ shrdi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ shrdi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst using writemask k (elements are copied from src when the corresponding mask bit is not set).
- _mm_
mask_ shrdi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst using writemask k (elements are copied from src“ when the corresponding mask bit is not set).
- _mm_
mask_ shrdv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm_
mask_ shrdv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm_
mask_ shrdv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst using writemask k (elements are copied from a when the corresponding mask bit is not set).
- _mm_
maskz_ compress_ epi8 avx512vbmi2
andavx512vl
- Contiguously store the active 8-bit integers in a (those with their respective bit set in zeromask k) to dst, and set the remaining elements to zero.
- _mm_
maskz_ compress_ epi16 avx512vbmi2
andavx512vl
- Contiguously store the active 16-bit integers in a (those with their respective bit set in zeromask k) to dst, and set the remaining elements to zero.
- _mm_
maskz_ expand_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from a (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ expand_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from a (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ ⚠expandloadu_ epi8 avx512vbmi2
andavx512vl
- Load contiguous active 8-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ ⚠expandloadu_ epi16 avx512vbmi2
andavx512vl
- Load contiguous active 16-bit integers from unaligned memory at mem_addr (those with their respective bit set in mask k), and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shldi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shldi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shldi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shldv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shldv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shldv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shrdi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shrdi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shrdi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shrdv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shrdv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
maskz_ shrdv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set).
- _mm_
shldi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by imm8 bits, and store the upper 16-bits in dst).
- _mm_
shldi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by imm8 bits, and store the upper 32-bits in dst.
- _mm_
shldi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by imm8 bits, and store the upper 64-bits in dst).
- _mm_
shldv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in a and b producing an intermediate 32-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 16-bits in dst.
- _mm_
shldv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in a and b producing an intermediate 64-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 32-bits in dst.
- _mm_
shldv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in a and b producing an intermediate 128-bit result. Shift the result left by the amount specified in the corresponding element of c, and store the upper 64-bits in dst.
- _mm_
shrdi_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by imm8 bits, and store the lower 16-bits in dst.
- _mm_
shrdi_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by imm8 bits, and store the lower 32-bits in dst.
- _mm_
shrdi_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by imm8 bits, and store the lower 64-bits in dst.
- _mm_
shrdv_ epi16 avx512vbmi2
andavx512vl
- Concatenate packed 16-bit integers in b and a producing an intermediate 32-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 16-bits in dst.
- _mm_
shrdv_ epi32 avx512vbmi2
andavx512vl
- Concatenate packed 32-bit integers in b and a producing an intermediate 64-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 32-bits in dst.
- _mm_
shrdv_ epi64 avx512vbmi2
andavx512vl
- Concatenate packed 64-bit integers in b and a producing an intermediate 128-bit result. Shift the result right by the amount specified in the corresponding element of c, and store the lower 64-bits in dst.
- expandloadb_
128 🔒 ⚠ - expandloadb_
256 🔒 ⚠ - expandloadb_
512 🔒 ⚠ - expandloadw_
128 🔒 ⚠ - expandloadw_
256 🔒 ⚠ - expandloadw_
512 🔒 ⚠ - vcompressstoreb 🔒 ⚠
- vcompressstoreb128 🔒 ⚠
- vcompressstoreb256 🔒 ⚠
- vcompressstorew 🔒 ⚠
- vcompressstorew128 🔒 ⚠
- vcompressstorew256 🔒 ⚠
- vpcompressb 🔒 ⚠
- vpcompressb128 🔒 ⚠
- vpcompressb256 🔒 ⚠
- vpcompressw 🔒 ⚠
- vpcompressw128 🔒 ⚠
- vpcompressw256 🔒 ⚠
- vpexpandb 🔒 ⚠
- vpexpandb128 🔒 ⚠
- vpexpandb256 🔒 ⚠
- vpexpandw 🔒 ⚠
- vpexpandw128 🔒 ⚠
- vpexpandw256 🔒 ⚠