MMX-Miscellaneous-MMX#
_m_packsswb#
- Tech:
MMX
- Category:
Miscellaneous
- Header:
mmintrin.h
- Searchable:
MMX-Miscellaneous-MMX
- Register:
MMX 64 bit
- Return Type:
__m64
- Param Types:
__m64 a, __m64 b
- Param ETypes:
SI16 a, SI16 b
__m64 _m_packsswb(__m64 a, __m64 b);
Intel Description
Convert packed signed 16-bit integers from “a” and “b” to packed 8-bit integers using signed saturation, and store the results in “dst”.
Deprecated since version X87: MMX technology intrinsics can cause issues on modern processors and should generally be avoided. Use SSE2, AVX, or later instruction sets instead, especially when targeting modern processors.
Intel Implementation Psudeo-Code
dst[7:0] := Saturate8(a[15:0])
dst[15:8] := Saturate8(a[31:16])
dst[23:16] := Saturate8(a[47:32])
dst[31:24] := Saturate8(a[63:48])
dst[39:32] := Saturate8(b[15:0])
dst[47:40] := Saturate8(b[31:16])
dst[55:48] := Saturate8(b[47:32])
dst[63:56] := Saturate8(b[63:48])
_m_packssdw#
- Tech:
MMX
- Category:
Miscellaneous
- Header:
mmintrin.h
- Searchable:
MMX-Miscellaneous-MMX
- Register:
MMX 64 bit
- Return Type:
__m64
- Param Types:
__m64 a, __m64 b
- Param ETypes:
SI32 a, SI32 b
__m64 _m_packssdw(__m64 a, __m64 b);
Intel Description
Convert packed signed 32-bit integers from “a” and “b” to packed 16-bit integers using signed saturation, and store the results in “dst”.
Deprecated since version X87: MMX technology intrinsics can cause issues on modern processors and should generally be avoided. Use SSE2, AVX, or later instruction sets instead, especially when targeting modern processors.
Intel Implementation Psudeo-Code
dst[15:0] := Saturate16(a[31:0])
dst[31:16] := Saturate16(a[63:32])
dst[47:32] := Saturate16(b[31:0])
dst[63:48] := Saturate16(b[63:32])
_m_packuswb#
- Tech:
MMX
- Category:
Miscellaneous
- Header:
mmintrin.h
- Searchable:
MMX-Miscellaneous-MMX
- Register:
MMX 64 bit
- Return Type:
__m64
- Param Types:
__m64 a, __m64 b
- Param ETypes:
SI16 a, SI16 b
__m64 _m_packuswb(__m64 a, __m64 b);
Intel Description
Convert packed signed 16-bit integers from “a” and “b” to packed 8-bit integers using unsigned saturation, and store the results in “dst”.
Deprecated since version X87: MMX technology intrinsics can cause issues on modern processors and should generally be avoided. Use SSE2, AVX, or later instruction sets instead, especially when targeting modern processors.
Intel Implementation Psudeo-Code
dst[7:0] := SaturateU8(a[15:0])
dst[15:8] := SaturateU8(a[31:16])
dst[23:16] := SaturateU8(a[47:32])
dst[31:24] := SaturateU8(a[63:48])
dst[39:32] := SaturateU8(b[15:0])
dst[47:40] := SaturateU8(b[31:16])
dst[55:48] := SaturateU8(b[47:32])
dst[63:56] := SaturateU8(b[63:48])