16 #ifndef _MMINTRIN_H_INCLUDED
17 #define _MMINTRIN_H_INCLUDED
20 #if !defined _M_IX86 && !defined _M_X64
21 #error This header is specific to X86 and X64 targets
24 #if defined (_M_CEE_PURE)
25 #error ERROR: MM intrinsics not supported in the pure mode!
28 #if defined __cplusplus
36 unsigned __int64 m64_u64;
42 unsigned __int8 m64_u8[8];
43 unsigned __int16 m64_u16[4];
44 unsigned __int32 m64_u32[2];
50 __m64 _m_from_int(
int _I);
51 int _m_to_int(
__m64 _M);
114 __m64 _mm_setzero_si64(
void);
115 __m64 _mm_set_pi32(
int _I1,
int _I0);
116 __m64 _mm_set_pi16(
short _S3,
short _S2,
short _S1,
short _S0);
117 __m64 _mm_set_pi8(
char _B7,
char _B6,
char _B5,
char _B4,
118 char _B3,
char _B2,
char _B1,
char _B0);
119 __m64 _mm_set1_pi32(
int _I);
121 __m64 _mm_set1_pi8(
char _B);
122 __m64 _mm_setr_pi32(
int _I1,
int _I0);
123 __m64 _mm_setr_pi16(
short _S3,
short _S2,
short _S1,
short _S0);
124 __m64 _mm_setr_pi8(
char _B7,
char _B6,
char _B5,
char _B4,
125 char _B3,
char _B2,
char _B1,
char _B0);
128 #define _mm_empty _m_empty
129 #define _mm_cvtsi32_si64 _m_from_int
130 #define _mm_cvtsi64_si32 _m_to_int
131 #define _mm_packs_pi16 _m_packsswb
132 #define _mm_packs_pi32 _m_packssdw
133 #define _mm_packs_pu16 _m_packuswb
134 #define _mm_unpackhi_pi8 _m_punpckhbw
135 #define _mm_unpackhi_pi16 _m_punpckhwd
136 #define _mm_unpackhi_pi32 _m_punpckhdq
137 #define _mm_unpacklo_pi8 _m_punpcklbw
138 #define _mm_unpacklo_pi16 _m_punpcklwd
139 #define _mm_unpacklo_pi32 _m_punpckldq
140 #define _mm_add_pi8 _m_paddb
141 #define _mm_add_pi16 _m_paddw
142 #define _mm_add_pi32 _m_paddd
143 #define _mm_adds_pi8 _m_paddsb
144 #define _mm_adds_pi16 _m_paddsw
145 #define _mm_adds_pu8 _m_paddusb
146 #define _mm_adds_pu16 _m_paddusw
147 #define _mm_sub_pi8 _m_psubb
148 #define _mm_sub_pi16 _m_psubw
149 #define _mm_sub_pi32 _m_psubd
150 #define _mm_subs_pi8 _m_psubsb
151 #define _mm_subs_pi16 _m_psubsw
152 #define _mm_subs_pu8 _m_psubusb
153 #define _mm_subs_pu16 _m_psubusw
154 #define _mm_madd_pi16 _m_pmaddwd
155 #define _mm_mulhi_pi16 _m_pmulhw
156 #define _mm_mullo_pi16 _m_pmullw
157 #define _mm_sll_pi16 _m_psllw
158 #define _mm_slli_pi16 _m_psllwi
159 #define _mm_sll_pi32 _m_pslld
160 #define _mm_slli_pi32 _m_pslldi
161 #define _mm_sll_si64 _m_psllq
162 #define _mm_slli_si64 _m_psllqi
163 #define _mm_sra_pi16 _m_psraw
164 #define _mm_srai_pi16 _m_psrawi
165 #define _mm_sra_pi32 _m_psrad
166 #define _mm_srai_pi32 _m_psradi
167 #define _mm_srl_pi16 _m_psrlw
168 #define _mm_srli_pi16 _m_psrlwi
169 #define _mm_srl_pi32 _m_psrld
170 #define _mm_srli_pi32 _m_psrldi
171 #define _mm_srl_si64 _m_psrlq
172 #define _mm_srli_si64 _m_psrlqi
173 #define _mm_and_si64 _m_pand
174 #define _mm_andnot_si64 _m_pandn
175 #define _mm_or_si64 _m_por
176 #define _mm_xor_si64 _m_pxor
177 #define _mm_cmpeq_pi8 _m_pcmpeqb
178 #define _mm_cmpeq_pi16 _m_pcmpeqw
179 #define _mm_cmpeq_pi32 _m_pcmpeqd
180 #define _mm_cmpgt_pi8 _m_pcmpgtb
181 #define _mm_cmpgt_pi16 _m_pcmpgtw
182 #define _mm_cmpgt_pi32 _m_pcmpgtd
183 #endif // defined(_M_IX86)
185 #if defined __cplusplus
void * align(size_t _Bound, size_t _Size, void *&_Ptr, size_t &_Space) _NOEXCEPT
Definition: memory:2409
_N wchar_t * _S1
Definition: wchar.h:163
__m64
Definition: mmintrin.h:45
return _S
Definition: wchar.h:262
_Diff _Count
Definition: algorithm:1941
union __declspec(intrin_type) __declspec(align(8)) __m64
Definition: mmintrin.h:34