Lines Matching defs:__m128

35 typedef float __m128 __attribute__((__vector_size__(16)));
43 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
44 _mm_add_ss(__m128 __a, __m128 __b)
50 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
51 _mm_add_ps(__m128 __a, __m128 __b)
56 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
57 _mm_sub_ss(__m128 __a, __m128 __b)
63 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
64 _mm_sub_ps(__m128 __a, __m128 __b)
69 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
70 _mm_mul_ss(__m128 __a, __m128 __b)
76 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
77 _mm_mul_ps(__m128 __a, __m128 __b)
82 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
83 _mm_div_ss(__m128 __a, __m128 __b)
89 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
90 _mm_div_ps(__m128 __a, __m128 __b)
95 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
96 _mm_sqrt_ss(__m128 __a)
98 __m128 __c = __builtin_ia32_sqrtss(__a);
99 return (__m128) { __c[0], __a[1], __a[2], __a[3] };
102 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
103 _mm_sqrt_ps(__m128 __a)
108 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
109 _mm_rcp_ss(__m128 __a)
111 __m128 __c = __builtin_ia32_rcpss(__a);
112 return (__m128) { __c[0], __a[1], __a[2], __a[3] };
115 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
116 _mm_rcp_ps(__m128 __a)
121 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
122 _mm_rsqrt_ss(__m128 __a)
124 __m128 __c = __builtin_ia32_rsqrtss(__a);
125 return (__m128) { __c[0], __a[1], __a[2], __a[3] };
128 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
129 _mm_rsqrt_ps(__m128 __a)
134 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
135 _mm_min_ss(__m128 __a, __m128 __b)
140 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
141 _mm_min_ps(__m128 __a, __m128 __b)
146 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
147 _mm_max_ss(__m128 __a, __m128 __b)
152 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
153 _mm_max_ps(__m128 __a, __m128 __b)
158 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
159 _mm_and_ps(__m128 __a, __m128 __b)
161 return (__m128)((__v4si)__a & (__v4si)__b);
164 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
165 _mm_andnot_ps(__m128 __a, __m128 __b)
167 return (__m128)(~(__v4si)__a & (__v4si)__b);
170 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
171 _mm_or_ps(__m128 __a, __m128 __b)
173 return (__m128)((__v4si)__a | (__v4si)__b);
176 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
177 _mm_xor_ps(__m128 __a, __m128 __b)
179 return (__m128)((__v4si)__a ^ (__v4si)__b);
182 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
183 _mm_cmpeq_ss(__m128 __a, __m128 __b)
185 return (__m128)__builtin_ia32_cmpss(__a, __b, 0);
188 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
189 _mm_cmpeq_ps(__m128 __a, __m128 __b)
191 return (__m128)__builtin_ia32_cmpps(__a, __b, 0);
194 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
195 _mm_cmplt_ss(__m128 __a, __m128 __b)
197 return (__m128)__builtin_ia32_cmpss(__a, __b, 1);
200 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
201 _mm_cmplt_ps(__m128 __a, __m128 __b)
203 return (__m128)__builtin_ia32_cmpps(__a, __b, 1);
206 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
207 _mm_cmple_ss(__m128 __a, __m128 __b)
209 return (__m128)__builtin_ia32_cmpss(__a, __b, 2);
212 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
213 _mm_cmple_ps(__m128 __a, __m128 __b)
215 return (__m128)__builtin_ia32_cmpps(__a, __b, 2);
218 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
219 _mm_cmpgt_ss(__m128 __a, __m128 __b)
221 return (__m128)__builtin_shufflevector(__a,
226 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
227 _mm_cmpgt_ps(__m128 __a, __m128 __b)
229 return (__m128)__builtin_ia32_cmpps(__b, __a, 1);
232 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
233 _mm_cmpge_ss(__m128 __a, __m128 __b)
235 return (__m128)__builtin_shufflevector(__a,
240 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
241 _mm_cmpge_ps(__m128 __a, __m128 __b)
243 return (__m128)__builtin_ia32_cmpps(__b, __a, 2);
246 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
247 _mm_cmpneq_ss(__m128 __a, __m128 __b)
249 return (__m128)__builtin_ia32_cmpss(__a, __b, 4);
252 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
253 _mm_cmpneq_ps(__m128 __a, __m128 __b)
255 return (__m128)__builtin_ia32_cmpps(__a, __b, 4);
258 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
259 _mm_cmpnlt_ss(__m128 __a, __m128 __b)
261 return (__m128)__builtin_ia32_cmpss(__a, __b, 5);
264 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
265 _mm_cmpnlt_ps(__m128 __a, __m128 __b)
267 return (__m128)__builtin_ia32_cmpps(__a, __b, 5);
270 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
271 _mm_cmpnle_ss(__m128 __a, __m128 __b)
273 return (__m128)__builtin_ia32_cmpss(__a, __b, 6);
276 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
277 _mm_cmpnle_ps(__m128 __a, __m128 __b)
279 return (__m128)__builtin_ia32_cmpps(__a, __b, 6);
282 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
283 _mm_cmpngt_ss(__m128 __a, __m128 __b)
285 return (__m128)__builtin_shufflevector(__a,
290 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
291 _mm_cmpngt_ps(__m128 __a, __m128 __b)
293 return (__m128)__builtin_ia32_cmpps(__b, __a, 5);
296 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
297 _mm_cmpnge_ss(__m128 __a, __m128 __b)
299 return (__m128)__builtin_shufflevector(__a,
304 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
305 _mm_cmpnge_ps(__m128 __a, __m128 __b)
307 return (__m128)__builtin_ia32_cmpps(__b, __a, 6);
310 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
311 _mm_cmpord_ss(__m128 __a, __m128 __b)
313 return (__m128)__builtin_ia32_cmpss(__a, __b, 7);
316 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
317 _mm_cmpord_ps(__m128 __a, __m128 __b)
319 return (__m128)__builtin_ia32_cmpps(__a, __b, 7);
322 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
323 _mm_cmpunord_ss(__m128 __a, __m128 __b)
325 return (__m128)__builtin_ia32_cmpss(__a, __b, 3);
328 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
329 _mm_cmpunord_ps(__m128 __a, __m128 __b)
331 return (__m128)__builtin_ia32_cmpps(__a, __b, 3);
335 _mm_comieq_ss(__m128 __a, __m128 __b)
341 _mm_comilt_ss(__m128 __a, __m128 __b)
347 _mm_comile_ss(__m128 __a, __m128 __b)
353 _mm_comigt_ss(__m128 __a, __m128 __b)
359 _mm_comige_ss(__m128 __a, __m128 __b)
365 _mm_comineq_ss(__m128 __a, __m128 __b)
371 _mm_ucomieq_ss(__m128 __a, __m128 __b)
377 _mm_ucomilt_ss(__m128 __a, __m128 __b)
383 _mm_ucomile_ss(__m128 __a, __m128 __b)
389 _mm_ucomigt_ss(__m128 __a, __m128 __b)
395 _mm_ucomige_ss(__m128 __a, __m128 __b)
401 _mm_ucomineq_ss(__m128 __a, __m128 __b)
407 _mm_cvtss_si32(__m128 __a)
413 _mm_cvt_ss2si(__m128 __a)
421 _mm_cvtss_si64(__m128 __a)
429 _mm_cvtps_pi32(__m128 __a)
435 _mm_cvt_ps2pi(__m128 __a)
441 _mm_cvttss_si32(__m128 __a)
447 _mm_cvtt_ss2si(__m128 __a)
453 _mm_cvttss_si64(__m128 __a)
459 _mm_cvttps_pi32(__m128 __a)
465 _mm_cvtt_ps2pi(__m128 __a)
470 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
471 _mm_cvtsi32_ss(__m128 __a, int __b)
477 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
478 _mm_cvt_si2ss(__m128 __a, int __b)
485 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
486 _mm_cvtsi64_ss(__m128 __a, long long __b)
494 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
495 _mm_cvtpi32_ps(__m128 __a, __m64 __b)
500 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
501 _mm_cvt_pi2ps(__m128 __a, __m64 __b)
507 _mm_cvtss_f32(__m128 __a)
512 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
513 _mm_loadh_pi(__m128 __a, const __m64 *__p)
520 __m128 __bb = __builtin_shufflevector(__b, __b, 0, 1, 0, 1);
524 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
525 _mm_loadl_pi(__m128 __a, const __m64 *__p)
532 __m128 __bb = __builtin_shufflevector(__b, __b, 0, 1, 0, 1);
536 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
543 return (__m128){ __u, 0, 0, 0 };
546 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
553 return (__m128){ __u, __u, __u, __u };
558 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
561 return *(__m128*)__p;
564 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
568 __m128 __v;
573 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
576 __m128 __a = _mm_load_ps(__p);
580 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
583 return (__m128){ __w, 0, 0, 0 };
586 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
589 return (__m128){ __w, __w, __w, __w };
593 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
599 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
602 return (__m128){ __w, __x, __y, __z };
605 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
608 return (__m128){ __z, __y, __x, __w };
611 static __inline__ __m128 __attribute__((__always_inline__))
614 return (__m128){ 0, 0, 0, 0 };
618 _mm_storeh_pi(__m64 *__p, __m128 __a)
624 _mm_storel_pi(__m64 *__p, __m128 __a)
630 _mm_store_ss(float *__p, __m128 __a)
639 _mm_storeu_ps(float *__p, __m128 __a)
645 _mm_store1_ps(float *__p, __m128 __a)
652 _mm_store_ps1(float *__p, __m128 __a)
658 _mm_store_ps(float *__p, __m128 __a)
660 *(__m128 *)__p = __a;
664 _mm_storer_ps(float *__p, __m128 __a)
687 _mm_stream_ps(float *__p, __m128 __a)
790 __m128 __a = (a); \
791 __m128 __b = (b); \
792 (__m128)__builtin_shufflevector((__v4sf)__a, (__v4sf)__b, \
797 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
798 _mm_unpackhi_ps(__m128 __a, __m128 __b)
803 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
804 _mm_unpacklo_ps(__m128 __a, __m128 __b)
809 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
810 _mm_move_ss(__m128 __a, __m128 __b)
815 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
816 _mm_movehl_ps(__m128 __a, __m128 __b)
821 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
822 _mm_movelh_ps(__m128 __a, __m128 __b)
827 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
831 __m128 __r;
845 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
849 __m128 __r;
862 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
874 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
885 static __inline__ __m128 __attribute__((__always_inline__, __nodebug__))
888 __m128 __c;
898 _mm_cvtps_pi16(__m128 __a)
910 _mm_cvtps_pi8(__m128 __a)
921 _mm_movemask_ps(__m128 __a)
966 __m128 tmp3, tmp2, tmp1, tmp0; \