Available on x86 or x86-64 only.
Expand description
Supplemental Streaming SIMD Extensions 3 (SSSE3)
Functionsยง
- _mm_
abs_ epi8 ssse3 - Computes the absolute value of packed 8-bit signed integers in
aand return the unsigned results. - _mm_
abs_ epi16 ssse3 - Computes the absolute value of each of the packed 16-bit signed integers in
aand return the 16-bit unsigned integer - _mm_
abs_ epi32 ssse3 - Computes the absolute value of each of the packed 32-bit signed integers in
aand return the 32-bit unsigned integer - _mm_
alignr_ epi8 ssse3 - Concatenate 16-byte blocks in
aandbinto a 32-byte temporary result, shift the result right bynbytes, and returns the low 16 bytes. - _mm_
hadd_ epi16 ssse3 - Horizontally adds the adjacent pairs of values contained in 2 packed
128-bit vectors of
[8 x i16]. - _mm_
hadd_ epi32 ssse3 - Horizontally adds the adjacent pairs of values contained in 2 packed
128-bit vectors of
[4 x i32]. - _mm_
hadds_ epi16 ssse3 - Horizontally adds the adjacent pairs of values contained in 2 packed
128-bit vectors of
[8 x i16]. Positive sums greater than 7FFFh are saturated to 7FFFh. Negative sums less than 8000h are saturated to 8000h. - _mm_
hsub_ epi16 ssse3 - Horizontally subtract the adjacent pairs of values contained in 2
packed 128-bit vectors of
[8 x i16]. - _mm_
hsub_ epi32 ssse3 - Horizontally subtract the adjacent pairs of values contained in 2
packed 128-bit vectors of
[4 x i32]. - _mm_
hsubs_ epi16 ssse3 - Horizontally subtract the adjacent pairs of values contained in 2
packed 128-bit vectors of
[8 x i16]. Positive differences greater than 7FFFh are saturated to 7FFFh. Negative differences less than 8000h are saturated to 8000h. - _mm_
maddubs_ epi16 ssse3 - Multiplies corresponding pairs of packed 8-bit unsigned integer values contained in the first source operand and packed 8-bit signed integer values contained in the second source operand, add pairs of contiguous products with signed saturation, and writes the 16-bit sums to the corresponding bits in the destination.
- _mm_
mulhrs_ epi16 ssse3 - Multiplies packed 16-bit signed integer values, truncate the 32-bit
product to the 18 most significant bits by right-shifting, round the
truncated value by adding 1, and write bits
[16:1]to the destination. - _mm_
shuffle_ epi8 ssse3 - Shuffles bytes from
aaccording to the content ofb. - _mm_
sign_ epi8 ssse3 - Negates packed 8-bit integers in
awhen the corresponding signed 8-bit integer inbis negative, and returns the result. Elements in result are zeroed out when the corresponding element inbis zero. - _mm_
sign_ epi16 ssse3 - Negates packed 16-bit integers in
awhen the corresponding signed 16-bit integer inbis negative, and returns the results. Elements in result are zeroed out when the corresponding element inbis zero. - _mm_
sign_ epi32 ssse3 - Negates packed 32-bit integers in
awhen the corresponding signed 32-bit integer inbis negative, and returns the results. Element in result are zeroed out when the corresponding element inbis zero. - phaddsw128 ๐ โ
- phsubsw128 ๐ โ
- pmaddubsw128 ๐ โ
- pmulhrsw128 ๐ โ
- pshufb128 ๐ โ
- psignb128 ๐ โ
- psignd128 ๐ โ
- psignw128 ๐ โ