ReactOS  0.4.15-dev-5112-g22d8c0f
emmintrin.h File Reference
#include <crtdefs.h>
#include <xmmintrin.h>
Include dependency graph for emmintrin.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define _INCLUDED_EMM
 
#define __ATTRIBUTE_SSE2__   __attribute__((__target__("sse2")))
 
#define __INTRIN_INLINE_SSE2   __INTRIN_INLINE __ATTRIBUTE_SSE2__
 
#define _mm_set_pd1(a)   _mm_set1_pd(a)
 
#define _mm_load_pd1(p)   _mm_load1_pd(p)
 
#define _mm_store_pd1(p, a)   _mm_store1_pd((p), (a))
 
#define _mm_bslli_si128   _mm_slli_si128
 
#define _mm_bsrli_si128   _mm_srli_si128
 
#define _mm_stream_si64   _mm_stream_si64x
 
#define _MM_SHUFFLE2(fp1, fp0)   (((fp1) << 1) | (fp0))
 
#define _mm_slli_si128(a, imm)   ((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
 
#define _mm_srli_si128(a, imm)   ((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
 
#define _mm_extract_epi16(a, imm)
 
#define _mm_insert_epi16(a, b, imm)
 
#define _mm_shuffle_epi32(a, imm)   ((__m128i)__builtin_ia32_pshufd((__v4si)(__m128i)(a), (int)(imm)))
 
#define _mm_shufflelo_epi16(a, imm)   ((__m128i)__builtin_ia32_pshuflw((__v8hi)(__m128i)(a), (int)(imm)))
 
#define _mm_shufflehi_epi16(a, imm)   ((__m128i)__builtin_ia32_pshufhw((__v8hi)(__m128i)(a), (int)(imm)))
 
#define _mm_shuffle_pd(a, b, i)
 

Typedefs

typedef double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
 

Functions

__m128d _mm_add_sd (__m128d a, __m128d b)
 
__m128d _mm_add_pd (__m128d a, __m128d b)
 
__m128d _mm_sub_sd (__m128d a, __m128d b)
 
__m128d _mm_sub_pd (__m128d a, __m128d b)
 
__m128d _mm_mul_sd (__m128d a, __m128d b)
 
__m128d _mm_mul_pd (__m128d a, __m128d b)
 
__m128d _mm_div_sd (__m128d a, __m128d b)
 
__m128d _mm_div_pd (__m128d a, __m128d b)
 
__m128d _mm_sqrt_sd (__m128d a, __m128d b)
 
__m128d _mm_sqrt_pd (__m128d a)
 
__m128d _mm_min_sd (__m128d a, __m128d b)
 
__m128d _mm_min_pd (__m128d a, __m128d b)
 
__m128d _mm_max_sd (__m128d a, __m128d b)
 
__m128d _mm_max_pd (__m128d a, __m128d b)
 
__m128d _mm_and_pd (__m128d a, __m128d b)
 
__m128d _mm_andnot_pd (__m128d a, __m128d b)
 
__m128d _mm_or_pd (__m128d a, __m128d b)
 
__m128d _mm_xor_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpeq_pd (__m128d a, __m128d b)
 
__m128d _mm_cmplt_pd (__m128d a, __m128d b)
 
__m128d _mm_cmple_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpgt_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpge_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpord_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpunord_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpneq_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpnlt_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpnle_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpngt_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpnge_pd (__m128d a, __m128d b)
 
__m128d _mm_cmpeq_sd (__m128d a, __m128d b)
 
__m128d _mm_cmplt_sd (__m128d a, __m128d b)
 
__m128d _mm_cmple_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpgt_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpge_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpord_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpunord_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpneq_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpnlt_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpnle_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpngt_sd (__m128d a, __m128d b)
 
__m128d _mm_cmpnge_sd (__m128d a, __m128d b)
 
int _mm_comieq_sd (__m128d a, __m128d b)
 
int _mm_comilt_sd (__m128d a, __m128d b)
 
int _mm_comile_sd (__m128d a, __m128d b)
 
int _mm_comigt_sd (__m128d a, __m128d b)
 
int _mm_comige_sd (__m128d a, __m128d b)
 
int _mm_comineq_sd (__m128d a, __m128d b)
 
int _mm_ucomieq_sd (__m128d a, __m128d b)
 
int _mm_ucomilt_sd (__m128d a, __m128d b)
 
int _mm_ucomile_sd (__m128d a, __m128d b)
 
int _mm_ucomigt_sd (__m128d a, __m128d b)
 
int _mm_ucomige_sd (__m128d a, __m128d b)
 
int _mm_ucomineq_sd (__m128d a, __m128d b)
 
__m128 _mm_cvtpd_ps (__m128d a)
 
__m128d _mm_cvtps_pd (__m128 a)
 
__m128d _mm_cvtepi32_pd (__m128i a)
 
__m128i _mm_cvtpd_epi32 (__m128d a)
 
int _mm_cvtsd_si32 (__m128d a)
 
__m128 _mm_cvtsd_ss (__m128 a, __m128d b)
 
__m128d _mm_cvtsi32_sd (__m128d a, int b)
 
__m128d _mm_cvtss_sd (__m128d a, __m128 b)
 
__m128i _mm_cvttpd_epi32 (__m128d a)
 
int _mm_cvttsd_si32 (__m128d a)
 
__m64 _mm_cvtpd_pi32 (__m128d a)
 
__m64 _mm_cvttpd_pi32 (__m128d a)
 
__m128d _mm_cvtpi32_pd (__m64 a)
 
double _mm_cvtsd_f64 (__m128d a)
 
__m128d _mm_load_pd (double const *dp)
 
__m128d _mm_load1_pd (double const *dp)
 
__m128d _mm_loadr_pd (double const *dp)
 
__m128d _mm_loadu_pd (double const *dp)
 
__m128d _mm_load_sd (double const *dp)
 
__m128d _mm_loadh_pd (__m128d a, double const *dp)
 
__m128d _mm_loadl_pd (__m128d a, double const *dp)
 
__m128d _mm_set_sd (double w)
 
__m128d _mm_set1_pd (double w)
 
__m128d _mm_set_pd (double w, double x)
 
__m128d _mm_setr_pd (double w, double x)
 
__m128d _mm_setzero_pd (void)
 
__m128d _mm_move_sd (__m128d a, __m128d b)
 
void _mm_store_sd (double *dp, __m128d a)
 
void _mm_store_pd (double *dp, __m128d a)
 
void _mm_store1_pd (double *dp, __m128d a)
 
void _mm_storeu_pd (double *dp, __m128d a)
 
void _mm_storer_pd (double *dp, __m128d a)
 
void _mm_storeh_pd (double *dp, __m128d a)
 
void _mm_storel_pd (double *dp, __m128d a)
 
__m128i _mm_add_epi8 (__m128i a, __m128i b)
 
__m128i _mm_add_epi16 (__m128i a, __m128i b)
 
__m128i _mm_add_epi32 (__m128i a, __m128i b)
 
__m64 _mm_add_si64 (__m64 a, __m64 b)
 
__m128i _mm_add_epi64 (__m128i a, __m128i b)
 
__m128i _mm_adds_epi8 (__m128i a, __m128i b)
 
__m128i _mm_adds_epi16 (__m128i a, __m128i b)
 
__m128i _mm_adds_epu8 (__m128i a, __m128i b)
 
__m128i _mm_adds_epu16 (__m128i a, __m128i b)
 
__m128i _mm_avg_epu8 (__m128i a, __m128i b)
 
__m128i _mm_avg_epu16 (__m128i a, __m128i b)
 
__m128i _mm_madd_epi16 (__m128i a, __m128i b)
 
__m128i _mm_max_epi16 (__m128i a, __m128i b)
 
__m128i _mm_max_epu8 (__m128i a, __m128i b)
 
__m128i _mm_min_epi16 (__m128i a, __m128i b)
 
__m128i _mm_min_epu8 (__m128i a, __m128i b)
 
__m128i _mm_mulhi_epi16 (__m128i a, __m128i b)
 
__m128i _mm_mulhi_epu16 (__m128i a, __m128i b)
 
__m128i _mm_mullo_epi16 (__m128i a, __m128i b)
 
__m64 _mm_mul_su32 (__m64 a, __m64 b)
 
__m128i _mm_mul_epu32 (__m128i a, __m128i b)
 
__m128i _mm_sad_epu8 (__m128i a, __m128i b)
 
__m128i _mm_sub_epi8 (__m128i a, __m128i b)
 
__m128i _mm_sub_epi16 (__m128i a, __m128i b)
 
__m128i _mm_sub_epi32 (__m128i a, __m128i b)
 
__m64 _mm_sub_si64 (__m64 a, __m64 b)
 
__m128i _mm_sub_epi64 (__m128i a, __m128i b)
 
__m128i _mm_subs_epi8 (__m128i a, __m128i b)
 
__m128i _mm_subs_epi16 (__m128i a, __m128i b)
 
__m128i _mm_subs_epu8 (__m128i a, __m128i b)
 
__m128i _mm_subs_epu16 (__m128i a, __m128i b)
 
__m128i _mm_and_si128 (__m128i a, __m128i b)
 
__m128i _mm_andnot_si128 (__m128i a, __m128i b)
 
__m128i _mm_or_si128 (__m128i a, __m128i b)
 
__m128i _mm_xor_si128 (__m128i a, __m128i b)
 
__m128i _mm_slli_si128 (__m128i a, int i)
 
__m128i _mm_slli_epi16 (__m128i a, int count)
 
__m128i _mm_sll_epi16 (__m128i a, __m128i count)
 
__m128i _mm_slli_epi32 (__m128i a, int count)
 
__m128i _mm_sll_epi32 (__m128i a, __m128i count)
 
__m128i _mm_slli_epi64 (__m128i a, int count)
 
__m128i _mm_sll_epi64 (__m128i a, __m128i count)
 
__m128i _mm_srai_epi16 (__m128i a, int count)
 
__m128i _mm_sra_epi16 (__m128i a, __m128i count)
 
__m128i _mm_srai_epi32 (__m128i a, int count)
 
__m128i _mm_sra_epi32 (__m128i a, __m128i count)
 
__m128i _mm_srli_si128 (__m128i a, int imm)
 
__m128i _mm_srli_epi16 (__m128i a, int count)
 
__m128i _mm_srl_epi16 (__m128i a, __m128i count)
 
__m128i _mm_srli_epi32 (__m128i a, int count)
 
__m128i _mm_srl_epi32 (__m128i a, __m128i count)
 
__m128i _mm_srli_epi64 (__m128i a, int count)
 
__m128i _mm_srl_epi64 (__m128i a, __m128i count)
 
__m128i _mm_cmpeq_epi8 (__m128i a, __m128i b)
 
__m128i _mm_cmpeq_epi16 (__m128i a, __m128i b)
 
__m128i _mm_cmpeq_epi32 (__m128i a, __m128i b)
 
__m128i _mm_cmpgt_epi8 (__m128i a, __m128i b)
 
__m128i _mm_cmpgt_epi16 (__m128i a, __m128i b)
 
__m128i _mm_cmpgt_epi32 (__m128i a, __m128i b)
 
__m128i _mm_cmplt_epi8 (__m128i a, __m128i b)
 
__m128i _mm_cmplt_epi16 (__m128i a, __m128i b)
 
__m128i _mm_cmplt_epi32 (__m128i a, __m128i b)
 
__m128 _mm_cvtepi32_ps (__m128i a)
 
__m128i _mm_cvtps_epi32 (__m128 a)
 
__m128i _mm_cvttps_epi32 (__m128 a)
 
__m128i _mm_cvtsi32_si128 (int a)
 
int _mm_cvtsi128_si32 (__m128i a)
 
__m128i _mm_load_si128 (__m128i const *p)
 
__m128i _mm_loadu_si128 (__m128i_u const *p)
 
__m128i _mm_loadl_epi64 (__m128i_u const *p)
 
__m128i _mm_set_epi64 (__m64 q1, __m64 q0)
 
__m128i _mm_set_epi32 (int i3, int i2, int i1, int i0)
 
__m128i _mm_set_epi16 (short w7, short w6, short w5, short w4, short w3, short w2, short w1, short w0)
 
__m128i _mm_set_epi8 (char b15, char b14, char b13, char b12, char b11, char b10, char b9, char b8, char b7, char b6, char b5, char b4, char b3, char b2, char b1, char b0)
 
__m128i _mm_set1_epi64 (__m64 q)
 
__m128i _mm_set1_epi32 (int i)
 
__m128i _mm_set1_epi16 (short w)
 
__m128i _mm_set1_epi8 (char b)
 
__m128i _mm_setl_epi64 (__m128i q)
 
__m128i _mm_setr_epi64 (__m64 q0, __m64 q1)
 
__m128i _mm_setr_epi32 (int i0, int i1, int i2, int i3)
 
__m128i _mm_setr_epi16 (short w0, short w1, short w2, short w3, short w4, short w5, short w6, short w7)
 
__m128i _mm_setr_epi8 (char b15, char b14, char b13, char b12, char b11, char b10, char b9, char b8, char b7, char b6, char b5, char b4, char b3, char b2, char b1, char b0)
 
__m128i _mm_setzero_si128 (void)
 
void _mm_store_si128 (__m128i *p, __m128i b)
 
void _mm_storeu_si128 (__m128i_u *p, __m128i b)
 
void _mm_maskmoveu_si128 (__m128i d, __m128i n, _Out_writes_bytes_(16) char *p)
 
void _mm_storel_epi64 (__m128i_u *p, __m128i a)
 
void _mm_stream_pd (double *p, __m128d a)
 
void _mm_stream_si128 (__m128i *p, __m128i a)
 
void _mm_stream_si32 (int *p, int a)
 
void _mm_clflush (void const *p)
 
void _mm_lfence (void)
 
void _mm_mfence (void)
 
__m128i _mm_packs_epi16 (__m128i a, __m128i b)
 
__m128i _mm_packs_epi32 (__m128i a, __m128i b)
 
__m128i _mm_packus_epi16 (__m128i a, __m128i b)
 
int _mm_extract_epi16 (__m128i a, int imm)
 
__m128i _mm_insert_epi16 (__m128i a, int b, int imm)
 
int _mm_movemask_epi8 (__m128i a)
 
__m128i _mm_shuffle_epi32 (__m128i a, int imm)
 
__m128i _mm_shufflelo_epi16 (__m128i a, int imm)
 
__m128i _mm_shufflehi_epi16 (__m128i a, int imm)
 
__m128i _mm_unpackhi_epi8 (__m128i a, __m128i b)
 
__m128i _mm_unpackhi_epi16 (__m128i a, __m128i b)
 
__m128i _mm_unpackhi_epi32 (__m128i a, __m128i b)
 
__m128i _mm_unpackhi_epi64 (__m128i a, __m128i b)
 
__m128i _mm_unpacklo_epi8 (__m128i a, __m128i b)
 
__m128i _mm_unpacklo_epi16 (__m128i a, __m128i b)
 
__m128i _mm_unpacklo_epi32 (__m128i a, __m128i b)
 
__m128i _mm_unpacklo_epi64 (__m128i a, __m128i b)
 
__m64 _mm_movepi64_pi64 (__m128i a)
 
__m128i _mm_movpi64_epi64 (__m64 a)
 
__m128i _mm_move_epi64 (__m128i a)
 
__m128d _mm_unpackhi_pd (__m128d a, __m128d b)
 
__m128d _mm_unpacklo_pd (__m128d a, __m128d b)
 
int _mm_movemask_pd (__m128d a)
 
__m128d _mm_shuffle_pd (__m128d a, __m128d b, int imm)
 
__m128 _mm_castpd_ps (__m128d a)
 
__m128i _mm_castpd_si128 (__m128d a)
 
__m128d _mm_castps_pd (__m128 a)
 
__m128i _mm_castps_si128 (__m128 a)
 
__m128 _mm_castsi128_ps (__m128i a)
 
__m128d _mm_castsi128_pd (__m128i a)
 
void _mm_pause (void)
 
__INTRIN_INLINE_SSE2 __m128i _mm_loadu_si64 (void const *a)
 
__INTRIN_INLINE_SSE2 __m128i _mm_loadu_si32 (void const *a)
 
__INTRIN_INLINE_SSE2 __m128i _mm_loadu_si16 (void const *a)
 
__INTRIN_INLINE_SSE2 __m128d _mm_undefined_pd (void)
 
__INTRIN_INLINE_SSE2 __m128i _mm_cvtsi64_si128 (long long a)
 
__INTRIN_INLINE_SSE2 long long _mm_cvtsi128_si64 (__m128i a)
 
__INTRIN_INLINE_SSE2 __m128i _mm_undefined_si128 (void)
 
__INTRIN_INLINE_SSE2 __m128i _mm_set_epi64x (long long q1, long long q0)
 
__INTRIN_INLINE_SSE2 __m128i _mm_set1_epi64x (long long q)
 
__INTRIN_INLINE_SSE2 void _mm_storeu_si64 (void *p, __m128i b)
 
__INTRIN_INLINE_SSE2 void _mm_storeu_si32 (void *p, __m128i b)
 
__INTRIN_INLINE_SSE2 void _mm_storeu_si16 (void *p, __m128i b)
 
__INTRIN_INLINE_SSE2 void _mm_maskmoveu_si128 (__m128i d, __m128i n, char *p)
 

Macro Definition Documentation

◆ __ATTRIBUTE_SSE2__

#define __ATTRIBUTE_SSE2__   __attribute__((__target__("sse2")))

Definition at line 67 of file emmintrin.h.

◆ __INTRIN_INLINE_SSE2

#define __INTRIN_INLINE_SSE2   __INTRIN_INLINE __ATTRIBUTE_SSE2__

Definition at line 69 of file emmintrin.h.

◆ _INCLUDED_EMM

#define _INCLUDED_EMM

Definition at line 12 of file emmintrin.h.

◆ _mm_bslli_si128

#define _mm_bslli_si128   _mm_slli_si128

Definition at line 318 of file emmintrin.h.

◆ _mm_bsrli_si128

#define _mm_bsrli_si128   _mm_srli_si128

Definition at line 319 of file emmintrin.h.

◆ _mm_extract_epi16

#define _mm_extract_epi16 (   a,
  imm 
)
Value:
((int)(unsigned short)__builtin_ia32_vec_ext_v8hi((__v8hi)(__m128i)(a), \
(int)(imm)))
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
Definition: typeof.h:31

Definition at line 1757 of file emmintrin.h.

◆ _mm_insert_epi16

#define _mm_insert_epi16 (   a,
  b,
  imm 
)
Value:
((__m128i)__builtin_ia32_vec_set_v8hi((__v8hi)(__m128i)(a), (int)(b), \
(int)(imm)))
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
Definition: typeof.h:31

Definition at line 1761 of file emmintrin.h.

◆ _mm_load_pd1

#define _mm_load_pd1 (   p)    _mm_load1_pd(p)

Definition at line 316 of file emmintrin.h.

◆ _mm_set_pd1

#define _mm_set_pd1 (   a)    _mm_set1_pd(a)

Definition at line 315 of file emmintrin.h.

◆ _MM_SHUFFLE2

#define _MM_SHUFFLE2 (   fp1,
  fp0 
)    (((fp1) << 1) | (fp0))

Definition at line 943 of file emmintrin.h.

◆ _mm_shuffle_epi32

#define _mm_shuffle_epi32 (   a,
  imm 
)    ((__m128i)__builtin_ia32_pshufd((__v4si)(__m128i)(a), (int)(imm)))

Definition at line 1770 of file emmintrin.h.

◆ _mm_shuffle_pd

#define _mm_shuffle_pd (   a,
  b,
  i 
)
Value:
((__m128d)__builtin_ia32_shufpd((__v2df)(__m128d)(a), (__v2df)(__m128d)(b), \
(int)(i)))
#define b
Definition: ke_i.h:79
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Definition at line 1901 of file emmintrin.h.

◆ _mm_shufflehi_epi16

#define _mm_shufflehi_epi16 (   a,
  imm 
)    ((__m128i)__builtin_ia32_pshufhw((__v8hi)(__m128i)(a), (int)(imm)))

Definition at line 1776 of file emmintrin.h.

◆ _mm_shufflelo_epi16

#define _mm_shufflelo_epi16 (   a,
  imm 
)    ((__m128i)__builtin_ia32_pshuflw((__v8hi)(__m128i)(a), (int)(imm)))

Definition at line 1773 of file emmintrin.h.

◆ _mm_slli_si128

#define _mm_slli_si128 (   a,
  imm 
)    ((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))

Definition at line 1341 of file emmintrin.h.

◆ _mm_srli_si128

#define _mm_srli_si128 (   a,
  imm 
)    ((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))

Definition at line 1394 of file emmintrin.h.

◆ _mm_store_pd1

#define _mm_store_pd1 (   p,
  a 
)    _mm_store1_pd((p), (a))

Definition at line 317 of file emmintrin.h.

◆ _mm_stream_si64

#define _mm_stream_si64   _mm_stream_si64x

Definition at line 320 of file emmintrin.h.

Typedef Documentation

◆ __attribute__

void __attribute__ ( (__vector_size__(16), __aligned__(16))  )
inline

Definition at line 43 of file emmintrin.h.

Function Documentation

◆ _mm_add_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_add_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1123 of file emmintrin.h.

1124 {
1125  return (__m128i)((__v8hu)a + (__v8hu)b);
1126 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I16vec8::operator+=(), Is16vec8::operator+=(), and Iu16vec8::operator+=().

◆ _mm_add_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_add_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1128 of file emmintrin.h.

1129 {
1130  return (__m128i)((__v4su)a + (__v4su)b);
1131 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I32vec4::operator+=(), Is32vec4::operator+=(), and Iu32vec4::operator+=().

◆ _mm_add_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_add_epi64 ( __m128i  a,
__m128i  b 
)

Definition at line 1138 of file emmintrin.h.

1139 {
1140  return (__m128i)((__v2du)a + (__v2du)b);
1141 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I64vec2::operator+=().

◆ _mm_add_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_add_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1118 of file emmintrin.h.

1119 {
1120  return (__m128i)((__v16qu)a + (__v16qu)b);
1121 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I8vec16::operator+=(), Is8vec16::operator+=(), and Iu8vec16::operator+=().

◆ _mm_add_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_add_pd ( __m128d  a,
__m128d  b 
)

Definition at line 573 of file emmintrin.h.

574 {
575  return (__m128d)((__v2df)a + (__v2df)b);
576 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2::operator+=().

◆ _mm_add_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_add_sd ( __m128d  a,
__m128d  b 
)

Definition at line 567 of file emmintrin.h.

568 {
569  a[0] += b[0];
570  return a;
571 }
#define a
Definition: ke_i.h:78
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_add_si64()

__INTRIN_INLINE_MMX __m64 _mm_add_si64 ( __m64  a,
__m64  b 
)

Definition at line 1133 of file emmintrin.h.

1134 {
1135  return (__m64)__builtin_ia32_paddq((__v1di)a, (__v1di)b);
1136 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_adds_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_adds_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1152 of file emmintrin.h.

1153 {
1154 #if HAS_BUILTIN(__builtin_elementwise_add_sat)
1155  return (__m128i)__builtin_elementwise_add_sat((__v8hi)a, (__v8hi)b);
1156 #else
1157  return (__m128i)__builtin_ia32_paddsw128((__v8hi)a, (__v8hi)b);
1158 #endif
1159 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_add().

◆ _mm_adds_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_adds_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1143 of file emmintrin.h.

1144 {
1145 #if HAS_BUILTIN(__builtin_elementwise_add_sat)
1146  return (__m128i)__builtin_elementwise_add_sat((__v16qs)a, (__v16qs)b);
1147 #else
1148  return (__m128i)__builtin_ia32_paddsb128((__v16qi)a, (__v16qi)b);
1149 #endif
1150 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_add().

◆ _mm_adds_epu16()

__INTRIN_INLINE_SSE2 __m128i _mm_adds_epu16 ( __m128i  a,
__m128i  b 
)

Definition at line 1170 of file emmintrin.h.

1171 {
1172 #if HAS_BUILTIN(__builtin_elementwise_add_sat)
1173  return (__m128i)__builtin_elementwise_add_sat((__v8hu)a, (__v8hu)b);
1174 #else
1175  return (__m128i)__builtin_ia32_paddusw128((__v8hi)a, (__v8hi)b);
1176 #endif
1177 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_add().

◆ _mm_adds_epu8()

__INTRIN_INLINE_SSE2 __m128i _mm_adds_epu8 ( __m128i  a,
__m128i  b 
)

Definition at line 1161 of file emmintrin.h.

1162 {
1163 #if HAS_BUILTIN(__builtin_elementwise_add_sat)
1164  return (__m128i)__builtin_elementwise_add_sat((__v16qu)a, (__v16qu)b);
1165 #else
1166  return (__m128i)__builtin_ia32_paddusb128((__v16qi)a, (__v16qi)b);
1167 #endif
1168 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_add().

◆ _mm_and_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_and_pd ( __m128d  a,
__m128d  b 
)

Definition at line 642 of file emmintrin.h.

643 {
644  return (__m128d)((__v2du)a & (__v2du)b);
645 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2::operator &=().

◆ _mm_and_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_and_si128 ( __m128i  a,
__m128i  b 
)

Definition at line 1321 of file emmintrin.h.

1322 {
1323  return (__m128i)((__v2du)a & (__v2du)b);
1324 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by operator &(), M128::operator&=(), I128vec1::operator&=(), I64vec2::operator&=(), I32vec4::operator&=(), Is32vec4::operator&=(), Iu32vec4::operator&=(), I16vec8::operator&=(), Is16vec8::operator&=(), Iu16vec8::operator&=(), I8vec16::operator&=(), Is8vec16::operator&=(), and Iu8vec16::operator&=().

◆ _mm_andnot_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_andnot_pd ( __m128d  a,
__m128d  b 
)

Definition at line 647 of file emmintrin.h.

648 {
649  return (__m128d)(~(__v2du)a & (__v2du)b);
650 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_andnot_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_andnot_si128 ( __m128i  a,
__m128i  b 
)

Definition at line 1326 of file emmintrin.h.

1327 {
1328  return (__m128i)(~(__v2du)a & (__v2du)b);
1329 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by andnot(), and cmpneq().

◆ _mm_avg_epu16()

__INTRIN_INLINE_SSE2 __m128i _mm_avg_epu16 ( __m128i  a,
__m128i  b 
)

Definition at line 1184 of file emmintrin.h.

1185 {
1186  return (__m128i)__builtin_ia32_pavgw128((__v8hi)a, (__v8hi)b);
1187 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by simd_avg().

◆ _mm_avg_epu8()

__INTRIN_INLINE_SSE2 __m128i _mm_avg_epu8 ( __m128i  a,
__m128i  b 
)

Definition at line 1179 of file emmintrin.h.

1180 {
1181  return (__m128i)__builtin_ia32_pavgb128((__v16qi)a, (__v16qi)b);
1182 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by simd_avg().

◆ _mm_castpd_ps()

__INTRIN_INLINE_SSE2 __m128 _mm_castpd_ps ( __m128d  a)

Definition at line 1905 of file emmintrin.h.

1906 {
1907  return (__m128)a;
1908 }
#define a
Definition: ke_i.h:78

◆ _mm_castpd_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_castpd_si128 ( __m128d  a)

Definition at line 1910 of file emmintrin.h.

1911 {
1912  return (__m128i)a;
1913 }
#define a
Definition: ke_i.h:78

◆ _mm_castps_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_castps_pd ( __m128  a)

Definition at line 1915 of file emmintrin.h.

1916 {
1917  return (__m128d)a;
1918 }
#define a
Definition: ke_i.h:78

◆ _mm_castps_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_castps_si128 ( __m128  a)

Definition at line 1920 of file emmintrin.h.

1921 {
1922  return (__m128i)a;
1923 }
#define a
Definition: ke_i.h:78

◆ _mm_castsi128_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_castsi128_pd ( __m128i  a)

Definition at line 1930 of file emmintrin.h.

1931 {
1932  return (__m128d)a;
1933 }
#define a
Definition: ke_i.h:78

◆ _mm_castsi128_ps()

__INTRIN_INLINE_SSE2 __m128 _mm_castsi128_ps ( __m128i  a)

Definition at line 1925 of file emmintrin.h.

1926 {
1927  return (__m128)a;
1928 }
#define a
Definition: ke_i.h:78

◆ _mm_clflush()

void _mm_clflush ( void const p)

◆ _mm_cmpeq_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_cmpeq_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1432 of file emmintrin.h.

1433 {
1434  return (__m128i)((__v8hi)a == (__v8hi)b);
1435 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by cmpeq(), and cmpneq().

◆ _mm_cmpeq_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_cmpeq_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1437 of file emmintrin.h.

1438 {
1439  return (__m128i)((__v4si)a == (__v4si)b);
1440 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by cmpeq(), and cmpneq().

◆ _mm_cmpeq_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_cmpeq_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1427 of file emmintrin.h.

1428 {
1429  return (__m128i)((__v16qi)a == (__v16qi)b);
1430 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by cmpeq(), and cmpneq().

◆ _mm_cmpeq_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpeq_pd ( __m128d  a,
__m128d  b 
)

Definition at line 662 of file emmintrin.h.

663 {
664  return (__m128d)__builtin_ia32_cmpeqpd((__v2df)a, (__v2df)b);
665 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpeq_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpeq_sd ( __m128d  a,
__m128d  b 
)

Definition at line 722 of file emmintrin.h.

723 {
724  return (__m128d)__builtin_ia32_cmpeqsd((__v2df)a, (__v2df)b);
725 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpge_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpge_pd ( __m128d  a,
__m128d  b 
)

Definition at line 682 of file emmintrin.h.

683 {
684  return (__m128d)__builtin_ia32_cmplepd((__v2df)b, (__v2df)a);
685 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpge_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpge_sd ( __m128d  a,
__m128d  b 
)

Definition at line 743 of file emmintrin.h.

744 {
745  __m128d __c = __builtin_ia32_cmplesd((__v2df)b, (__v2df)a);
746  return __extension__(__m128d){__c[0], a[1]};
747 }
#define __c
Definition: schilyio.h:209
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpgt_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_cmpgt_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1449 of file emmintrin.h.

1450 {
1451  return (__m128i)((__v8hi)a > (__v8hi)b);
1452 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by _mm_cmplt_epi16(), cmpgt(), and cmplt().

◆ _mm_cmpgt_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_cmpgt_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1454 of file emmintrin.h.

1455 {
1456  return (__m128i)((__v4si)a > (__v4si)b);
1457 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by _mm_cmplt_epi32(), cmpgt(), and cmplt().

◆ _mm_cmpgt_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_cmpgt_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1442 of file emmintrin.h.

1443 {
1444  /* This function always performs a signed comparison, but __v16qi is a char
1445  which may be signed or unsigned, so use __v16qs. */
1446  return (__m128i)((__v16qs)a > (__v16qs)b);
1447 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by _mm_cmplt_epi8(), and cmpgt().

◆ _mm_cmpgt_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpgt_pd ( __m128d  a,
__m128d  b 
)

Definition at line 677 of file emmintrin.h.

678 {
679  return (__m128d)__builtin_ia32_cmpltpd((__v2df)b, (__v2df)a);
680 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpgt_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpgt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 737 of file emmintrin.h.

738 {
739  __m128d __c = __builtin_ia32_cmpltsd((__v2df)b, (__v2df)a);
740  return __extension__(__m128d){__c[0], a[1]};
741 }
#define __c
Definition: schilyio.h:209
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmple_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmple_pd ( __m128d  a,
__m128d  b 
)

Definition at line 672 of file emmintrin.h.

673 {
674  return (__m128d)__builtin_ia32_cmplepd((__v2df)a, (__v2df)b);
675 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmple_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmple_sd ( __m128d  a,
__m128d  b 
)

Definition at line 732 of file emmintrin.h.

733 {
734  return (__m128d)__builtin_ia32_cmplesd((__v2df)a, (__v2df)b);
735 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmplt_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_cmplt_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1464 of file emmintrin.h.

1465 {
1466  return _mm_cmpgt_epi16(b, a);
1467 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
__m128i _mm_cmpgt_epi16(__m128i a, __m128i b)
Definition: emmintrin.h:1449
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmplt_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_cmplt_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1469 of file emmintrin.h.

1470 {
1471  return _mm_cmpgt_epi32(b, a);
1472 }
__m128i _mm_cmpgt_epi32(__m128i a, __m128i b)
Definition: emmintrin.h:1454
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmplt_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_cmplt_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1459 of file emmintrin.h.

1460 {
1461  return _mm_cmpgt_epi8(b, a);
1462 }
__m128i _mm_cmpgt_epi8(__m128i a, __m128i b)
Definition: emmintrin.h:1442
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by cmplt().

◆ _mm_cmplt_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmplt_pd ( __m128d  a,
__m128d  b 
)

Definition at line 667 of file emmintrin.h.

668 {
669  return (__m128d)__builtin_ia32_cmpltpd((__v2df)a, (__v2df)b);
670 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmplt_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmplt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 727 of file emmintrin.h.

728 {
729  return (__m128d)__builtin_ia32_cmpltsd((__v2df)a, (__v2df)b);
730 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpneq_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpneq_pd ( __m128d  a,
__m128d  b 
)

Definition at line 697 of file emmintrin.h.

698 {
699  return (__m128d)__builtin_ia32_cmpneqpd((__v2df)a, (__v2df)b);
700 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpneq_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpneq_sd ( __m128d  a,
__m128d  b 
)

Definition at line 759 of file emmintrin.h.

760 {
761  return (__m128d)__builtin_ia32_cmpneqsd((__v2df)a, (__v2df)b);
762 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpnge_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpnge_pd ( __m128d  a,
__m128d  b 
)

Definition at line 717 of file emmintrin.h.

718 {
719  return (__m128d)__builtin_ia32_cmpnlepd((__v2df)b, (__v2df)a);
720 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpnge_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpnge_sd ( __m128d  a,
__m128d  b 
)

Definition at line 780 of file emmintrin.h.

781 {
782  __m128d __c = __builtin_ia32_cmpnlesd((__v2df)b, (__v2df)a);
783  return __extension__(__m128d){__c[0], a[1]};
784 }
#define __c
Definition: schilyio.h:209
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpngt_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpngt_pd ( __m128d  a,
__m128d  b 
)

Definition at line 712 of file emmintrin.h.

713 {
714  return (__m128d)__builtin_ia32_cmpnltpd((__v2df)b, (__v2df)a);
715 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpngt_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpngt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 774 of file emmintrin.h.

775 {
776  __m128d __c = __builtin_ia32_cmpnltsd((__v2df)b, (__v2df)a);
777  return __extension__(__m128d){__c[0], a[1]};
778 }
#define __c
Definition: schilyio.h:209
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpnle_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpnle_pd ( __m128d  a,
__m128d  b 
)

Definition at line 707 of file emmintrin.h.

708 {
709  return (__m128d)__builtin_ia32_cmpnlepd((__v2df)a, (__v2df)b);
710 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpnle_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpnle_sd ( __m128d  a,
__m128d  b 
)

Definition at line 769 of file emmintrin.h.

770 {
771  return (__m128d)__builtin_ia32_cmpnlesd((__v2df)a, (__v2df)b);
772 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpnlt_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpnlt_pd ( __m128d  a,
__m128d  b 
)

Definition at line 702 of file emmintrin.h.

703 {
704  return (__m128d)__builtin_ia32_cmpnltpd((__v2df)a, (__v2df)b);
705 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpnlt_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpnlt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 764 of file emmintrin.h.

765 {
766  return (__m128d)__builtin_ia32_cmpnltsd((__v2df)a, (__v2df)b);
767 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpord_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpord_pd ( __m128d  a,
__m128d  b 
)

Definition at line 687 of file emmintrin.h.

688 {
689  return (__m128d)__builtin_ia32_cmpordpd((__v2df)a, (__v2df)b);
690 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpord_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpord_sd ( __m128d  a,
__m128d  b 
)

Definition at line 749 of file emmintrin.h.

750 {
751  return (__m128d)__builtin_ia32_cmpordsd((__v2df)a, (__v2df)b);
752 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpunord_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpunord_pd ( __m128d  a,
__m128d  b 
)

Definition at line 692 of file emmintrin.h.

693 {
694  return (__m128d)__builtin_ia32_cmpunordpd((__v2df)a, (__v2df)b);
695 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cmpunord_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cmpunord_sd ( __m128d  a,
__m128d  b 
)

Definition at line 754 of file emmintrin.h.

755 {
756  return (__m128d)__builtin_ia32_cmpunordsd((__v2df)a, (__v2df)b);
757 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_comieq_sd()

__INTRIN_INLINE_SSE2 int _mm_comieq_sd ( __m128d  a,
__m128d  b 
)

Definition at line 786 of file emmintrin.h.

787 {
788  return __builtin_ia32_comisdeq((__v2df)a, (__v2df)b);
789 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_comige_sd()

__INTRIN_INLINE_SSE2 int _mm_comige_sd ( __m128d  a,
__m128d  b 
)

Definition at line 806 of file emmintrin.h.

807 {
808  return __builtin_ia32_comisdge((__v2df)a, (__v2df)b);
809 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_comigt_sd()

__INTRIN_INLINE_SSE2 int _mm_comigt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 801 of file emmintrin.h.

802 {
803  return __builtin_ia32_comisdgt((__v2df)a, (__v2df)b);
804 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_comile_sd()

__INTRIN_INLINE_SSE2 int _mm_comile_sd ( __m128d  a,
__m128d  b 
)

Definition at line 796 of file emmintrin.h.

797 {
798  return __builtin_ia32_comisdle((__v2df)a, (__v2df)b);
799 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_comilt_sd()

__INTRIN_INLINE_SSE2 int _mm_comilt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 791 of file emmintrin.h.

792 {
793  return __builtin_ia32_comisdlt((__v2df)a, (__v2df)b);
794 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_comineq_sd()

__INTRIN_INLINE_SSE2 int _mm_comineq_sd ( __m128d  a,
__m128d  b 
)

Definition at line 811 of file emmintrin.h.

812 {
813  return __builtin_ia32_comisdneq((__v2df)a, (__v2df)b);
814 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtepi32_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cvtepi32_pd ( __m128i  a)

Definition at line 860 of file emmintrin.h.

861 {
862 #if HAS_BUILTIN(__builtin_convertvector)
863  return (__m128d)__builtin_convertvector(__builtin_shufflevector((__v4si)a, (__v4si)a, 0, 1), __v2df);
864 #else
865  return __builtin_ia32_cvtdq2pd((__v4si)a);
866 #endif
867 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtepi32_ps()

__INTRIN_INLINE_SSE2 __m128 _mm_cvtepi32_ps ( __m128i  a)

Definition at line 1493 of file emmintrin.h.

1494 {
1495 #if HAS_BUILTIN(__builtin_convertvector)
1496  return (__m128)__builtin_convertvector((__v4si)a, __v4sf);
1497 #else
1498  return __builtin_ia32_cvtdq2ps((__v4si)a);
1499 #endif
1500 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtpd_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_cvtpd_epi32 ( __m128d  a)

Definition at line 869 of file emmintrin.h.

870 {
871  return (__m128i)__builtin_ia32_cvtpd2dq((__v2df)a);
872 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtpd_pi32()

__INTRIN_INLINE_MMX __m64 _mm_cvtpd_pi32 ( __m128d  a)

Definition at line 907 of file emmintrin.h.

908 {
909  return (__m64)__builtin_ia32_cvtpd2pi((__v2df)a);
910 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtpd_ps()

__INTRIN_INLINE_SSE2 __m128 _mm_cvtpd_ps ( __m128d  a)

Definition at line 846 of file emmintrin.h.

847 {
848  return __builtin_ia32_cvtpd2ps((__v2df)a);
849 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2ToF32vec4().

◆ _mm_cvtpi32_pd()

__INTRIN_INLINE_SSE __m128d _mm_cvtpi32_pd ( __m64  a)

Definition at line 917 of file emmintrin.h.

918 {
919  return __builtin_ia32_cvtpi2pd((__v2si)a);
920 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtps_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_cvtps_epi32 ( __m128  a)

Definition at line 1502 of file emmintrin.h.

1503 {
1504  return (__m128i)__builtin_ia32_cvtps2dq((__v4sf)a);
1505 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtps_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_cvtps_pd ( __m128  a)

Definition at line 851 of file emmintrin.h.

852 {
853 #if HAS_BUILTIN(__builtin_convertvector)
854  return (__m128d)__builtin_convertvector(__builtin_shufflevector((__v4sf)a, (__v4sf)a, 0, 1), __v2df);
855 #else
856  return __builtin_ia32_cvtps2pd(a);
857 #endif
858 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F32vec4ToF64vec2().

◆ _mm_cvtsd_f64()

__INTRIN_INLINE_SSE2 double _mm_cvtsd_f64 ( __m128d  a)

Definition at line 922 of file emmintrin.h.

923 {
924  return a[0];
925 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtsd_si32()

__INTRIN_INLINE_SSE2 int _mm_cvtsd_si32 ( __m128d  a)

Definition at line 874 of file emmintrin.h.

875 {
876  return __builtin_ia32_cvtsd2si((__v2df)a);
877 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtsd_ss()

__INTRIN_INLINE_SSE2 __m128 _mm_cvtsd_ss ( __m128  a,
__m128d  b 
)

Definition at line 879 of file emmintrin.h.

880 {
881  return (__m128)__builtin_ia32_cvtsd2ss((__v4sf)a, (__v2df)b);
882 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtsi128_si32()

__INTRIN_INLINE_SSE2 int _mm_cvtsi128_si32 ( __m128i  a)

Definition at line 1522 of file emmintrin.h.

1523 {
1524  __v4si b = (__v4si)a;
1525  return b[0];
1526 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvtsi128_si64()

__INTRIN_INLINE_SSE2 long long _mm_cvtsi128_si64 ( __m128i  a)

Definition at line 1528 of file emmintrin.h.

1529 {
1530  return a[0];
1531 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sqrt().

◆ _mm_cvtsi32_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cvtsi32_sd ( __m128d  a,
int  b 
)

Definition at line 884 of file emmintrin.h.

886 {
887  a[0] = b;
888  return a;
889 }
#define a
Definition: ke_i.h:78
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by IntToF64vec2().

◆ _mm_cvtsi32_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_cvtsi32_si128 ( int  a)

Definition at line 1512 of file emmintrin.h.

1513 {
1514  return __extension__(__m128i)(__v4si){a, 0, 0, 0};
1515 }
#define a
Definition: ke_i.h:78

◆ _mm_cvtsi64_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_cvtsi64_si128 ( long long  a)

Definition at line 1517 of file emmintrin.h.

1518 {
1519  return __extension__(__m128i)(__v2di){a, 0};
1520 }
#define a
Definition: ke_i.h:78

◆ _mm_cvtss_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_cvtss_sd ( __m128d  a,
__m128  b 
)

Definition at line 891 of file emmintrin.h.

892 {
893  a[0] = b[0];
894  return a;
895 }
#define a
Definition: ke_i.h:78
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvttpd_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_cvttpd_epi32 ( __m128d  a)

Definition at line 897 of file emmintrin.h.

898 {
899  return (__m128i)__builtin_ia32_cvttpd2dq((__v2df)a);
900 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvttpd_pi32()

__INTRIN_INLINE_MMX __m64 _mm_cvttpd_pi32 ( __m128d  a)

Definition at line 912 of file emmintrin.h.

913 {
914  return (__m64)__builtin_ia32_cvttpd2pi((__v2df)a);
915 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvttps_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_cvttps_epi32 ( __m128  a)

Definition at line 1507 of file emmintrin.h.

1508 {
1509  return (__m128i)__builtin_ia32_cvttps2dq((__v4sf)a);
1510 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_cvttsd_si32()

__INTRIN_INLINE_SSE2 int _mm_cvttsd_si32 ( __m128d  a)

Definition at line 902 of file emmintrin.h.

903 {
904  return __builtin_ia32_cvttsd2si((__v2df)a);
905 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2_SELECT().

◆ _mm_div_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_div_pd ( __m128d  a,
__m128d  b 
)

Definition at line 606 of file emmintrin.h.

607 {
608  return (__m128d)((__v2df)a / (__v2df)b);
609 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2::operator/=().

◆ _mm_div_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_div_sd ( __m128d  a,
__m128d  b 
)

Definition at line 600 of file emmintrin.h.

601 {
602  a[0] /= b[0];
603  return a;
604 }
#define a
Definition: ke_i.h:78
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_extract_epi16()

int _mm_extract_epi16 ( __m128i  a,
int  imm 
)

◆ _mm_insert_epi16()

__m128i _mm_insert_epi16 ( __m128i  a,
int  b,
int  imm 
)

◆ _mm_lfence()

void _mm_lfence ( void  )

Definition at line 106 of file intrin_x86.h.

107 {
108  _ReadBarrier();
109  __asm__ __volatile__("lfence");
110  _ReadBarrier();
111 }
__asm__("\n\t \ NewInt3Handler:\n\t \ pushl $" STR(REASON_INT3) "\n\t \ // call debugger loop\n\t \ jmp NewInt31Handler\n\t \ ")
#define _ReadBarrier
Definition: intrin_x86.h:95

◆ _mm_load1_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_load1_pd ( double const dp)

Definition at line 932 of file emmintrin.h.

933 {
934  struct __mm_load1_pd_struct {
935  double __u;
936  } __attribute__((__packed__, __may_alias__));
937  double __u = ((const struct __mm_load1_pd_struct *)dp)->__u;
938  return __extension__(__m128d){__u, __u};
939 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43

◆ _mm_load_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_load_pd ( double const dp)

Definition at line 927 of file emmintrin.h.

928 {
929  return *(const __m128d *)dp;
930 }

◆ _mm_load_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_load_sd ( double const dp)

Definition at line 991 of file emmintrin.h.

992 {
993  struct __mm_load_sd_struct {
994  double __u;
995  } __attribute__((__packed__, __may_alias__));
996  double __u = ((const struct __mm_load_sd_struct *)dp)->__u;
997  return __extension__(__m128d){__u, 0};
998 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43

◆ _mm_load_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_load_si128 ( __m128i const p)

Definition at line 1533 of file emmintrin.h.

1534 {
1535  return *p;
1536 }
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_loadh_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_loadh_pd ( __m128d  a,
double const dp 
)

Definition at line 1000 of file emmintrin.h.

1001 {
1002  struct __mm_loadh_pd_struct {
1003  double __u;
1004  } __attribute__((__packed__, __may_alias__));
1005  double __u = ((const struct __mm_loadh_pd_struct *)dp)->__u;
1006  return __extension__(__m128d){a[0], __u};
1007 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_loadl_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_loadl_epi64 ( __m128i_u const p)

Definition at line 1546 of file emmintrin.h.

1547 {
1548  struct __mm_loadl_epi64_struct {
1549  long long __u;
1550  } __attribute__((__packed__, __may_alias__));
1551  return __extension__(__m128i){
1552  ((const struct __mm_loadl_epi64_struct *)p)->__u, 0};
1553 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_loadl_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_loadl_pd ( __m128d  a,
double const dp 
)

Definition at line 1009 of file emmintrin.h.

1010 {
1011  struct __mm_loadl_pd_struct {
1012  double __u;
1013  } __attribute__((__packed__, __may_alias__));
1014  double __u = ((const struct __mm_loadl_pd_struct *)dp)->__u;
1015  return __extension__(__m128d){__u, a[1]};
1016 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_loadr_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_loadr_pd ( double const dp)

Definition at line 946 of file emmintrin.h.

947 {
948 #if HAS_BUILTIN(__builtin_shufflevector)
949  __m128d u = *(const __m128d *)dp;
950  return __builtin_shufflevector((__v2df)u, (__v2df)u, 1, 0);
951 #else
952  return (__m128d){ dp[1], dp[0] };
953 #endif
954 }
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
Definition: glfuncs.h:240

◆ _mm_loadu_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_loadu_pd ( double const dp)

Definition at line 956 of file emmintrin.h.

957 {
958  struct __loadu_pd {
959  __m128d_u __v;
960  } __attribute__((__packed__, __may_alias__));
961  return ((const struct __loadu_pd *)dp)->__v;
962 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43

Referenced by loadu().

◆ _mm_loadu_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_loadu_si128 ( __m128i_u const p)

Definition at line 1538 of file emmintrin.h.

1539 {
1540  struct __loadu_si128 {
1541  __m128i_u __v;
1542  } __attribute__((__packed__, __may_alias__));
1543  return ((const struct __loadu_si128 *)p)->__v;
1544 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_loadu_si16()

__INTRIN_INLINE_SSE2 __m128i _mm_loadu_si16 ( void const a)

Definition at line 982 of file emmintrin.h.

983 {
984  struct __loadu_si16 {
985  short __v;
986  } __attribute__((__packed__, __may_alias__));
987  short __u = ((const struct __loadu_si16 *)a)->__v;
988  return __extension__(__m128i)(__v8hi){__u, 0, 0, 0, 0, 0, 0, 0};
989 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_loadu_si32()

__INTRIN_INLINE_SSE2 __m128i _mm_loadu_si32 ( void const a)

Definition at line 973 of file emmintrin.h.

974 {
975  struct __loadu_si32 {
976  int __v;
977  } __attribute__((__packed__, __may_alias__));
978  int __u = ((const struct __loadu_si32 *)a)->__v;
979  return __extension__(__m128i)(__v4si){__u, 0, 0, 0};
980 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_loadu_si64()

__INTRIN_INLINE_SSE2 __m128i _mm_loadu_si64 ( void const a)

Definition at line 964 of file emmintrin.h.

965 {
966  struct __loadu_si64 {
967  long long __v;
968  } __attribute__((__packed__, __may_alias__));
969  long long __u = ((const struct __loadu_si64 *)a)->__v;
970  return __extension__(__m128i)(__v2di){__u, 0LL};
971 }
#define LL
Definition: tui.h:150
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_madd_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_madd_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1189 of file emmintrin.h.

1190 {
1191  return (__m128i)__builtin_ia32_pmaddwd128((__v8hi)a, (__v8hi)b);
1192 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by mul_add().

◆ _mm_maskmoveu_si128() [1/2]

void _mm_maskmoveu_si128 ( __m128i  d,
__m128i  n,
_Out_writes_bytes_(16) char p 
)

◆ _mm_maskmoveu_si128() [2/2]

__INTRIN_INLINE_SSE2 void _mm_maskmoveu_si128 ( __m128i  d,
__m128i  n,
char p 
)

Definition at line 1693 of file emmintrin.h.

1694 {
1695  __builtin_ia32_maskmovdqu((__v16qi)d, (__v16qi)n, p);
1696 }
GLdouble n
Definition: glext.h:7729
GLfloat GLfloat p
Definition: glext.h:8902
#define d
Definition: ke_i.h:81

◆ _mm_max_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_max_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1194 of file emmintrin.h.

1195 {
1196 #if HAS_BUILTIN(__builtin_elementwise_max)
1197  return (__m128i)__builtin_elementwise_max((__v8hi)a, (__v8hi)b);
1198 #else
1199  return (__m128i)__builtin_ia32_pmaxsw128((__v8hi)a, (__v8hi)b);
1200 #endif
1201 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by simd_max().

◆ _mm_max_epu8()

__INTRIN_INLINE_SSE2 __m128i _mm_max_epu8 ( __m128i  a,
__m128i  b 
)

Definition at line 1203 of file emmintrin.h.

1204 {
1205 #if HAS_BUILTIN(__builtin_elementwise_max)
1206  return (__m128i)__builtin_elementwise_max((__v16qu)a, (__v16qu)b);
1207 #else
1208  return (__m128i)__builtin_ia32_pmaxub128((__v16qi)a, (__v16qi)b);
1209 #endif
1210 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by simd_max().

◆ _mm_max_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_max_pd ( __m128d  a,
__m128d  b 
)

Definition at line 637 of file emmintrin.h.

638 {
639  return __builtin_ia32_maxpd((__v2df)a, (__v2df)b);
640 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_max_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_max_sd ( __m128d  a,
__m128d  b 
)

Definition at line 632 of file emmintrin.h.

633 {
634  return __builtin_ia32_maxsd((__v2df)a, (__v2df)b);
635 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_mfence()

void _mm_mfence ( void  )

Definition at line 99 of file intrin_x86.h.

100 {
101  __asm__ __volatile__("mfence" : : : "memory");
102 }
__asm__("\n\t \ NewInt3Handler:\n\t \ pushl $" STR(REASON_INT3) "\n\t \ // call debugger loop\n\t \ jmp NewInt31Handler\n\t \ ")

◆ _mm_min_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_min_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1212 of file emmintrin.h.

1213 {
1214 #if HAS_BUILTIN(__builtin_elementwise_min)
1215  return (__m128i)__builtin_elementwise_min((__v8hi)a, (__v8hi)b);
1216 #else
1217  return (__m128i)__builtin_ia32_pminsw128((__v8hi)a, (__v8hi)b);
1218 #endif
1219 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by simd_min().

◆ _mm_min_epu8()

__INTRIN_INLINE_SSE2 __m128i _mm_min_epu8 ( __m128i  a,
__m128i  b 
)

Definition at line 1221 of file emmintrin.h.

1222 {
1223 #if HAS_BUILTIN(__builtin_elementwise_min)
1224  return (__m128i)__builtin_elementwise_min((__v16qu)a, (__v16qu)b);
1225 #else
1226  return (__m128i)__builtin_ia32_pminub128((__v16qi)a, (__v16qi)b);
1227 #endif
1228 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by simd_min().

◆ _mm_min_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_min_pd ( __m128d  a,
__m128d  b 
)

Definition at line 627 of file emmintrin.h.

628 {
629  return __builtin_ia32_minpd((__v2df)a, (__v2df)b);
630 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_min_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_min_sd ( __m128d  a,
__m128d  b 
)

Definition at line 622 of file emmintrin.h.

623 {
624  return __builtin_ia32_minsd((__v2df)a, (__v2df)b);
625 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_move_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_move_epi64 ( __m128i  a)

Definition at line 1869 of file emmintrin.h.

1870 {
1871 #if HAS_BUILTIN(__builtin_shufflevector)
1872  return __builtin_shufflevector((__v2di)a, _mm_setzero_si128(), 0, 2);
1873 #else
1874  return (__m128i)__builtin_ia32_movq128((__v2di)a);
1875 #endif
1876 }
__m128i _mm_setzero_si128(void)
Definition: emmintrin.h:1651
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_move_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_move_sd ( __m128d  a,
__m128d  b 
)

Definition at line 1053 of file emmintrin.h.

1054 {
1055  a[0] = b[0];
1056  return a;
1057 }
#define a
Definition: ke_i.h:78
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_movemask_epi8()

__INTRIN_INLINE_SSE2 int _mm_movemask_epi8 ( __m128i  a)

Definition at line 1765 of file emmintrin.h.

1766 {
1767  return __builtin_ia32_pmovmskb128((__v16qi)a);
1768 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_movemask_pd()

__INTRIN_INLINE_SSE2 int _mm_movemask_pd ( __m128d  a)

Definition at line 1896 of file emmintrin.h.

1897 {
1898  return __builtin_ia32_movmskpd((__v2df)a);
1899 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by move_mask().

◆ _mm_movepi64_pi64()

__INTRIN_INLINE_SSE2 __m64 _mm_movepi64_pi64 ( __m128i  a)

Definition at line 1859 of file emmintrin.h.

1860 {
1861  return (__m64)a[0];
1862 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_movpi64_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_movpi64_epi64 ( __m64  a)

Definition at line 1864 of file emmintrin.h.

1865 {
1866  return __extension__(__m128i)(__v2di){(long long)a, 0};
1867 }
#define long
Definition: qsort.c:33
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_mul_epu32()

__INTRIN_INLINE_SSE2 __m128i _mm_mul_epu32 ( __m128i  a,
__m128i  b 
)

Definition at line 1250 of file emmintrin.h.

1251 {
1252  return __builtin_ia32_pmuludq128((__v4si)a, (__v4si)b);
1253 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by operator *().

◆ _mm_mul_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_mul_pd ( __m128d  a,
__m128d  b 
)

Definition at line 595 of file emmintrin.h.

596 {
597  return (__m128d)((__v2df)a * (__v2df)b);
598 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2::operator *=().

◆ _mm_mul_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_mul_sd ( __m128d  a,
__m128d  b 
)

Definition at line 589 of file emmintrin.h.

590 {
591  a[0] *= b[0];
592  return a;
593 }
#define a
Definition: ke_i.h:78
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_mul_su32()

__INTRIN_INLINE_MMX __m64 _mm_mul_su32 ( __m64  a,
__m64  b 
)

Definition at line 1245 of file emmintrin.h.

1246 {
1247  return (__m64)__builtin_ia32_pmuludq((__v2si)a, (__v2si)b);
1248 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_mulhi_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_mulhi_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1230 of file emmintrin.h.

1231 {
1232  return (__m128i)__builtin_ia32_pmulhw128((__v8hi)a, (__v8hi)b);
1233 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by mul_high().

◆ _mm_mulhi_epu16()

__INTRIN_INLINE_SSE2 __m128i _mm_mulhi_epu16 ( __m128i  a,
__m128i  b 
)

Definition at line 1235 of file emmintrin.h.

1236 {
1237  return (__m128i)__builtin_ia32_pmulhuw128((__v8hi)a, (__v8hi)b);
1238 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by mul_high().

◆ _mm_mullo_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_mullo_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1240 of file emmintrin.h.

1241 {
1242  return (__m128i)((__v8hu)a * (__v8hu)b);
1243 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by operator *(), I16vec8::operator *=(), Is16vec8::operator *=(), and Iu16vec8::operator *=().

◆ _mm_or_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_or_pd ( __m128d  a,
__m128d  b 
)

Definition at line 652 of file emmintrin.h.

653 {
654  return (__m128d)((__v2du)a | (__v2du)b);
655 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2::operator|=().

◆ _mm_or_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_or_si128 ( __m128i  a,
__m128i  b 
)

Definition at line 1331 of file emmintrin.h.

1332 {
1333  return (__m128i)((__v2du)a | (__v2du)b);
1334 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by operator|(), M128::operator|=(), I128vec1::operator|=(), I64vec2::operator|=(), I32vec4::operator|=(), Is32vec4::operator|=(), Iu32vec4::operator|=(), I16vec8::operator|=(), Is16vec8::operator|=(), Iu16vec8::operator|=(), I8vec16::operator|=(), Is8vec16::operator|=(), and Iu8vec16::operator|=().

◆ _mm_packs_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_packs_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1742 of file emmintrin.h.

1743 {
1744  return (__m128i)__builtin_ia32_packsswb128((__v8hi)a, (__v8hi)b);
1745 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by pack_sat().

◆ _mm_packs_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_packs_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1747 of file emmintrin.h.

1748 {
1749  return (__m128i)__builtin_ia32_packssdw128((__v4si)a, (__v4si)b);
1750 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by pack_sat().

◆ _mm_packus_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_packus_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1752 of file emmintrin.h.

1753 {
1754  return (__m128i)__builtin_ia32_packuswb128((__v8hi)a, (__v8hi)b);
1755 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by packu_sat().

◆ _mm_pause()

void _mm_pause ( void  )

Definition at line 2028 of file intrin_x86.h.

2029 {
2030  __asm__ __volatile__("pause" : : : "memory");
2031 }
__asm__("\n\t \ NewInt3Handler:\n\t \ pushl $" STR(REASON_INT3) "\n\t \ // call debugger loop\n\t \ jmp NewInt31Handler\n\t \ ")

◆ _mm_sad_epu8()

__INTRIN_INLINE_SSE2 __m128i _mm_sad_epu8 ( __m128i  a,
__m128i  b 
)

Definition at line 1255 of file emmintrin.h.

1256 {
1257  return __builtin_ia32_psadbw128((__v16qi)a, (__v16qi)b);
1258 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sum_abs().

◆ _mm_set1_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_set1_epi16 ( short  w)

Definition at line 1613 of file emmintrin.h.

1614 {
1615  return _mm_set_epi16(w, w, w, w, w, w, w, w);
1616 }
GLubyte GLubyte GLubyte GLubyte w
Definition: glext.h:6102
__m128i _mm_set_epi16(short w7, short w6, short w5, short w4, short w3, short w2, short w1, short w0)
Definition: emmintrin.h:1580

◆ _mm_set1_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_set1_epi32 ( int  i)

Definition at line 1608 of file emmintrin.h.

1609 {
1610  return _mm_set_epi32(i, i, i, i);
1611 }
__m128i _mm_set_epi32(int i3, int i2, int i1, int i0)
Definition: emmintrin.h:1575
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248

◆ _mm_set1_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_set1_epi64 ( __m64  q)

Definition at line 1603 of file emmintrin.h.

1604 {
1605  return _mm_set_epi64(q, q);
1606 }
__m128i _mm_set_epi64(__m64 q1, __m64 q0)
Definition: emmintrin.h:1570
GLdouble GLdouble GLdouble GLdouble q
Definition: gl.h:2063

Referenced by get_mask128().

◆ _mm_set1_epi64x()

__INTRIN_INLINE_SSE2 __m128i _mm_set1_epi64x ( long long  q)

Definition at line 1598 of file emmintrin.h.

1599 {
1600  return _mm_set_epi64x(q, q);
1601 }
GLdouble GLdouble GLdouble GLdouble q
Definition: gl.h:2063
__INTRIN_INLINE_SSE2 __m128i _mm_set_epi64x(long long q1, long long q0)
Definition: emmintrin.h:1565

◆ _mm_set1_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_set1_epi8 ( char  b)

Definition at line 1618 of file emmintrin.h.

1619 {
1620  return _mm_set_epi8(b, b, b, b, b, b, b, b, b, b, b,
1621  b, b, b, b, b);
1622 }
__m128i _mm_set_epi8(char b15, char b14, char b13, char b12, char b11, char b10, char b9, char b8, char b7, char b6, char b5, char b4, char b3, char b2, char b1, char b0)
Definition: emmintrin.h:1587
GLboolean GLboolean GLboolean b
Definition: glext.h:6204

◆ _mm_set1_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_set1_pd ( double  w)

Definition at line 1033 of file emmintrin.h.

1034 {
1035  return __extension__(__m128d){w, w};
1036 }
GLubyte GLubyte GLubyte GLubyte w
Definition: glext.h:6102

Referenced by F64vec2::F64vec2().

◆ _mm_set_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_set_epi16 ( short  w7,
short  w6,
short  w5,
short  w4,
short  w3,
short  w2,
short  w1,
short  w0 
)

Definition at line 1580 of file emmintrin.h.

1583 {
1584  return __extension__(__m128i)(__v8hi){w0, w1, w2, w3, w4, w5, w6, w7};
1585 }
GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint GLdouble GLdouble w2
Definition: glext.h:8308
GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint GLdouble w1
Definition: glext.h:8308

Referenced by _mm_set1_epi16(), and _mm_setr_epi16().

◆ _mm_set_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_set_epi32 ( int  i3,
int  i2,
int  i1,
int  i0 
)

Definition at line 1575 of file emmintrin.h.

1576 {
1577  return __extension__(__m128i)(__v4si){i0, i1, i2, i3};
1578 }

Referenced by _mm_set1_epi32(), and _mm_setr_epi32().

◆ _mm_set_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_set_epi64 ( __m64  q1,
__m64  q0 
)

Definition at line 1570 of file emmintrin.h.

1571 {
1572  return _mm_set_epi64x((long long)q1, (long long)q0);
1573 }
__INTRIN_INLINE_SSE2 __m128i _mm_set_epi64x(long long q1, long long q0)
Definition: emmintrin.h:1565

Referenced by _mm_set1_epi64(), and _mm_setr_epi64().

◆ _mm_set_epi64x()

__INTRIN_INLINE_SSE2 __m128i _mm_set_epi64x ( long long  q1,
long long  q0 
)

Definition at line 1565 of file emmintrin.h.

1566 {
1567  return __extension__(__m128i)(__v2di){q0, q1};
1568 }

Referenced by _mm_set1_epi64x(), and _mm_set_epi64().

◆ _mm_set_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_set_epi8 ( char  b15,
char  b14,
char  b13,
char  b12,
char  b11,
char  b10,
char  b9,
char  b8,
char  b7,
char  b6,
char  b5,
char  b4,
char  b3,
char  b2,
char  b1,
char  b0 
)

Definition at line 1587 of file emmintrin.h.

1592 {
1593  return __extension__(__m128i)(__v16qi){
1594  b0, b1, b2, b3, b4, b5, b6, b7,
1595  b8, b9, b10, b11, b12, b13, b14, b15};
1596 }
static CRYPT_DATA_BLOB b1[]
Definition: msg.c:573
static CRYPT_DATA_BLOB b3[]
Definition: msg.c:592
static CRYPT_DATA_BLOB b2[]
Definition: msg.c:582
static CRYPT_DATA_BLOB b4
Definition: msg.c:2284

Referenced by _mm_set1_epi8(), and _mm_setr_epi8().

◆ _mm_set_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_set_pd ( double  w,
double  x 
)

Definition at line 1038 of file emmintrin.h.

1039 {
1040  return __extension__(__m128d){x, w};
1041 }
GLubyte GLubyte GLubyte GLubyte w
Definition: glext.h:6102
GLint GLint GLint GLint GLint x
Definition: gl.h:1548

Referenced by F64vec2::F64vec2().

◆ _mm_set_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_set_sd ( double  w)

Definition at line 1028 of file emmintrin.h.

1029 {
1030  return __extension__(__m128d){w, 0};
1031 }
GLubyte GLubyte GLubyte GLubyte w
Definition: glext.h:6102

Referenced by sqrt().

◆ _mm_setl_epi64()

__m128i _mm_setl_epi64 ( __m128i  q)

◆ _mm_setr_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_setr_epi16 ( short  w0,
short  w1,
short  w2,
short  w3,
short  w4,
short  w5,
short  w6,
short  w7 
)

Definition at line 1634 of file emmintrin.h.

1637 {
1638  return _mm_set_epi16(w7, w6, w5, w4, w3, w2, w1, w0);
1639 }
__m128i _mm_set_epi16(short w7, short w6, short w5, short w4, short w3, short w2, short w1, short w0)
Definition: emmintrin.h:1580
GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint GLdouble GLdouble w2
Definition: glext.h:8308
GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint GLdouble w1
Definition: glext.h:8308

◆ _mm_setr_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_setr_epi32 ( int  i0,
int  i1,
int  i2,
int  i3 
)

Definition at line 1629 of file emmintrin.h.

1630 {
1631  return _mm_set_epi32(i3, i2, i1, i0);
1632 }
__m128i _mm_set_epi32(int i3, int i2, int i1, int i0)
Definition: emmintrin.h:1575

◆ _mm_setr_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_setr_epi64 ( __m64  q0,
__m64  q1 
)

Definition at line 1624 of file emmintrin.h.

1625 {
1626  return _mm_set_epi64(q1, q0);
1627 }
__m128i _mm_set_epi64(__m64 q1, __m64 q0)
Definition: emmintrin.h:1570

◆ _mm_setr_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_setr_epi8 ( char  b15,
char  b14,
char  b13,
char  b12,
char  b11,
char  b10,
char  b9,
char  b8,
char  b7,
char  b6,
char  b5,
char  b4,
char  b3,
char  b2,
char  b1,
char  b0 
)

Definition at line 1641 of file emmintrin.h.

1646 {
1647  return _mm_set_epi8(b15, b14, b13, b12, b11, b10, b9, b8,
1648  b7, b6, b5, b4, b3, b2, b1, b0);
1649 }
__m128i _mm_set_epi8(char b15, char b14, char b13, char b12, char b11, char b10, char b9, char b8, char b7, char b6, char b5, char b4, char b3, char b2, char b1, char b0)
Definition: emmintrin.h:1587
static CRYPT_DATA_BLOB b1[]
Definition: msg.c:573
static CRYPT_DATA_BLOB b3[]
Definition: msg.c:592
static CRYPT_DATA_BLOB b2[]
Definition: msg.c:582
static CRYPT_DATA_BLOB b4
Definition: msg.c:2284

◆ _mm_setr_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_setr_pd ( double  w,
double  x 
)

Definition at line 1043 of file emmintrin.h.

1044 {
1045  return __extension__(__m128d){w, x};
1046 }
GLubyte GLubyte GLubyte GLubyte w
Definition: glext.h:6102
GLint GLint GLint GLint GLint x
Definition: gl.h:1548

◆ _mm_setzero_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_setzero_pd ( void  )

Definition at line 1048 of file emmintrin.h.

1049 {
1050  return __extension__(__m128d){0, 0};
1051 }

◆ _mm_setzero_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_setzero_si128 ( void  )

Definition at line 1651 of file emmintrin.h.

1652 {
1653  return __extension__(__m128i)(__v2di){0LL, 0LL};
1654 }
#define LL
Definition: tui.h:150

Referenced by _mm_move_epi64().

◆ _mm_shuffle_epi32()

__m128i _mm_shuffle_epi32 ( __m128i  a,
int  imm 
)

◆ _mm_shuffle_pd()

__m128d _mm_shuffle_pd ( __m128d  a,
__m128d  b,
int  imm 
)

◆ _mm_shufflehi_epi16()

__m128i _mm_shufflehi_epi16 ( __m128i  a,
int  imm 
)

◆ _mm_shufflelo_epi16()

__m128i _mm_shufflelo_epi16 ( __m128i  a,
int  imm 
)

◆ _mm_sll_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_sll_epi16 ( __m128i  a,
__m128i  count 
)

Definition at line 1349 of file emmintrin.h.

1350 {
1351  return (__m128i)__builtin_ia32_psllw128((__v8hi)a, (__v8hi)count);
1352 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I16vec8::operator<<(), Is16vec8::operator<<(), Iu16vec8::operator<<(), I16vec8::operator<<=(), Is16vec8::operator<<=(), and Iu16vec8::operator<<=().

◆ _mm_sll_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_sll_epi32 ( __m128i  a,
__m128i  count 
)

Definition at line 1359 of file emmintrin.h.

1360 {
1361  return (__m128i)__builtin_ia32_pslld128((__v4si)a, (__v4si)count);
1362 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I32vec4::operator<<(), Is32vec4::operator<<(), Iu32vec4::operator<<(), I32vec4::operator<<=(), Is32vec4::operator<<=(), and Iu32vec4::operator<<=().

◆ _mm_sll_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_sll_epi64 ( __m128i  a,
__m128i  count 
)

Definition at line 1369 of file emmintrin.h.

1370 {
1371  return __builtin_ia32_psllq128((__v2di)a, (__v2di)count);
1372 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I64vec2::operator<<(), and I64vec2::operator<<=().

◆ _mm_slli_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_slli_epi16 ( __m128i  a,
int  count 
)

Definition at line 1344 of file emmintrin.h.

1345 {
1346  return (__m128i)__builtin_ia32_psllwi128((__v8hi)a, count);
1347 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I16vec8::operator<<(), Is16vec8::operator<<(), Iu16vec8::operator<<(), I16vec8::operator<<=(), Is16vec8::operator<<=(), and Iu16vec8::operator<<=().

◆ _mm_slli_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_slli_epi32 ( __m128i  a,
int  count 
)

Definition at line 1354 of file emmintrin.h.

1355 {
1356  return (__m128i)__builtin_ia32_pslldi128((__v4si)a, count);
1357 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I32vec4::operator<<(), Is32vec4::operator<<(), Iu32vec4::operator<<(), I32vec4::operator<<=(), Is32vec4::operator<<=(), and Iu32vec4::operator<<=().

◆ _mm_slli_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_slli_epi64 ( __m128i  a,
int  count 
)

Definition at line 1364 of file emmintrin.h.

1365 {
1366  return __builtin_ia32_psllqi128((__v2di)a, count);
1367 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I64vec2::operator<<(), and I64vec2::operator<<=().

◆ _mm_slli_si128()

__m128i _mm_slli_si128 ( __m128i  a,
int  i 
)

◆ _mm_sqrt_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_sqrt_pd ( __m128d  a)

Definition at line 617 of file emmintrin.h.

618 {
619  return __builtin_ia32_sqrtpd((__v2df)a);
620 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sqrt().

◆ _mm_sqrt_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_sqrt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 611 of file emmintrin.h.

612 {
613  __m128d __c = __builtin_ia32_sqrtsd((__v2df)b);
614  return __extension__(__m128d){__c[0], a[1]};
615 }
#define __c
Definition: schilyio.h:209
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sqrt().

◆ _mm_sra_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_sra_epi16 ( __m128i  a,
__m128i  count 
)

Definition at line 1379 of file emmintrin.h.

1380 {
1381  return (__m128i)__builtin_ia32_psraw128((__v8hi)a, (__v8hi)count);
1382 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Is16vec8::operator>>(), and Is16vec8::operator>>=().

◆ _mm_sra_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_sra_epi32 ( __m128i  a,
__m128i  count 
)

Definition at line 1389 of file emmintrin.h.

1390 {
1391  return (__m128i)__builtin_ia32_psrad128((__v4si)a, (__v4si)count);
1392 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Is32vec4::operator>>(), and Is32vec4::operator>>=().

◆ _mm_srai_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_srai_epi16 ( __m128i  a,
int  count 
)

Definition at line 1374 of file emmintrin.h.

1375 {
1376  return (__m128i)__builtin_ia32_psrawi128((__v8hi)a, count);
1377 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Is16vec8::operator>>(), and Is16vec8::operator>>=().

◆ _mm_srai_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_srai_epi32 ( __m128i  a,
int  count 
)

Definition at line 1384 of file emmintrin.h.

1385 {
1386  return (__m128i)__builtin_ia32_psradi128((__v4si)a, count);
1387 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Is32vec4::operator>>(), and Is32vec4::operator>>=().

◆ _mm_srl_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_srl_epi16 ( __m128i  a,
__m128i  count 
)

Definition at line 1402 of file emmintrin.h.

1403 {
1404  return (__m128i)__builtin_ia32_psrlw128((__v8hi)a, (__v8hi)count);
1405 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Iu16vec8::operator>>(), and Iu16vec8::operator>>=().

◆ _mm_srl_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_srl_epi32 ( __m128i  a,
__m128i  count 
)

Definition at line 1412 of file emmintrin.h.

1413 {
1414  return (__m128i)__builtin_ia32_psrld128((__v4si)a, (__v4si)count);
1415 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Iu32vec4::operator>>(), and Iu32vec4::operator>>=().

◆ _mm_srl_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_srl_epi64 ( __m128i  a,
__m128i  count 
)

Definition at line 1422 of file emmintrin.h.

1423 {
1424  return __builtin_ia32_psrlq128((__v2di)a, (__v2di)count);
1425 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I64vec2::operator>>(), and I64vec2::operator>>=().

◆ _mm_srli_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_srli_epi16 ( __m128i  a,
int  count 
)

Definition at line 1397 of file emmintrin.h.

1398 {
1399  return (__m128i)__builtin_ia32_psrlwi128((__v8hi)a, count);
1400 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Iu16vec8::operator>>(), and Iu16vec8::operator>>=().

◆ _mm_srli_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_srli_epi32 ( __m128i  a,
int  count 
)

Definition at line 1407 of file emmintrin.h.

1408 {
1409  return (__m128i)__builtin_ia32_psrldi128((__v4si)a, count);
1410 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by Iu32vec4::operator>>(), and Iu32vec4::operator>>=().

◆ _mm_srli_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_srli_epi64 ( __m128i  a,
int  count 
)

Definition at line 1417 of file emmintrin.h.

1418 {
1419  return __builtin_ia32_psrlqi128((__v2di)a, count);
1420 }
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I64vec2::operator>>(), and I64vec2::operator>>=().

◆ _mm_srli_si128()

__m128i _mm_srli_si128 ( __m128i  a,
int  imm 
)

◆ _mm_store1_pd()

__INTRIN_INLINE_SSE2 void _mm_store1_pd ( double dp,
__m128d  a 
)

Definition at line 1072 of file emmintrin.h.

1073 {
1074 #if HAS_BUILTIN(__builtin_shufflevector)
1075  a = __builtin_shufflevector((__v2df)a, (__v2df)a, 0, 0);
1076  _mm_store_pd(dp, a);
1077 #else
1078  dp[0] = a[0];
1079  dp[1] = a[0];
1080 #endif
1081 }
void _mm_store_pd(double *dp, __m128d a)
Definition: emmintrin.h:1067
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_store_pd()

__INTRIN_INLINE_SSE2 void _mm_store_pd ( double dp,
__m128d  a 
)

Definition at line 1067 of file emmintrin.h.

1068 {
1069  *(__m128d *)dp = a;
1070 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by _mm_store1_pd().

◆ _mm_store_sd()

__INTRIN_INLINE_SSE2 void _mm_store_sd ( double dp,
__m128d  a 
)

Definition at line 1059 of file emmintrin.h.

1060 {
1061  struct __mm_store_sd_struct {
1062  double __u;
1063  } __attribute__((__packed__, __may_alias__));
1064  ((struct __mm_store_sd_struct *)dp)->__u = a[0];
1065 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_store_si128()

__INTRIN_INLINE_SSE2 void _mm_store_si128 ( __m128i *  p,
__m128i  b 
)

Definition at line 1656 of file emmintrin.h.

1657 {
1658  *p = b;
1659 }
#define b
Definition: ke_i.h:79
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_storeh_pd()

__INTRIN_INLINE_SSE2 void _mm_storeh_pd ( double dp,
__m128d  a 
)

Definition at line 1102 of file emmintrin.h.

1103 {
1104  struct __mm_storeh_pd_struct {
1105  double __u;
1106  } __attribute__((__packed__, __may_alias__));
1107  ((struct __mm_storeh_pd_struct *)dp)->__u = a[1];
1108 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_storel_epi64()

__INTRIN_INLINE_SSE2 void _mm_storel_epi64 ( __m128i_u *  p,
__m128i  a 
)

Definition at line 1698 of file emmintrin.h.

1699 {
1700  struct __mm_storel_epi64_struct {
1701  long long __u;
1702  } __attribute__((__packed__, __may_alias__));
1703  ((struct __mm_storel_epi64_struct *)p)->__u = a[0];
1704 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_storel_pd()

__INTRIN_INLINE_SSE2 void _mm_storel_pd ( double dp,
__m128d  a 
)

Definition at line 1110 of file emmintrin.h.

1111 {
1112  struct __mm_storeh_pd_struct {
1113  double __u;
1114  } __attribute__((__packed__, __may_alias__));
1115  ((struct __mm_storeh_pd_struct *)dp)->__u = a[0];
1116 }
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_storer_pd()

__INTRIN_INLINE_SSE2 void _mm_storer_pd ( double dp,
__m128d  a 
)

Definition at line 1091 of file emmintrin.h.

1092 {
1093 #if HAS_BUILTIN(__builtin_shufflevector)
1094  a = __builtin_shufflevector((__v2df)a, (__v2df)a, 1, 0);
1095  *(__m128d *)dp = a;
1096 #else
1097  dp[0] = a[1];
1098  dp[1] = a[0];
1099 #endif
1100 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_storeu_pd()

__INTRIN_INLINE_SSE2 void _mm_storeu_pd ( double dp,
__m128d  a 
)

Definition at line 1083 of file emmintrin.h.

1084 {
1085  struct __storeu_pd {
1086  __m128d_u __v;
1087  } __attribute__((__packed__, __may_alias__));
1088  ((struct __storeu_pd *)dp)->__v = a;
1089 }
#define a
Definition: ke_i.h:78
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43

Referenced by storeu().

◆ _mm_storeu_si128()

__INTRIN_INLINE_SSE2 void _mm_storeu_si128 ( __m128i_u *  p,
__m128i  b 
)

Definition at line 1661 of file emmintrin.h.

1662 {
1663  struct __storeu_si128 {
1664  __m128i_u __v;
1665  } __attribute__((__packed__, __may_alias__));
1666  ((struct __storeu_si128 *)p)->__v = b;
1667 }
#define b
Definition: ke_i.h:79
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_storeu_si16()

__INTRIN_INLINE_SSE2 void _mm_storeu_si16 ( void p,
__m128i  b 
)

Definition at line 1685 of file emmintrin.h.

1686 {
1687  struct __storeu_si16 {
1688  short __v;
1689  } __attribute__((__packed__, __may_alias__));
1690  ((struct __storeu_si16 *)p)->__v = ((__v8hi)b)[0];
1691 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_storeu_si32()

__INTRIN_INLINE_SSE2 void _mm_storeu_si32 ( void p,
__m128i  b 
)

Definition at line 1677 of file emmintrin.h.

1678 {
1679  struct __storeu_si32 {
1680  int __v;
1681  } __attribute__((__packed__, __may_alias__));
1682  ((struct __storeu_si32 *)p)->__v = ((__v4si)b)[0];
1683 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_storeu_si64()

__INTRIN_INLINE_SSE2 void _mm_storeu_si64 ( void p,
__m128i  b 
)

Definition at line 1669 of file emmintrin.h.

1670 {
1671  struct __storeu_si64 {
1672  long long __v;
1673  } __attribute__((__packed__, __may_alias__));
1674  ((struct __storeu_si64 *)p)->__v = ((__v2di)b)[0];
1675 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
double __m128d __attribute__((__vector_size__(16), __aligned__(16)))
Definition: emmintrin.h:43
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_stream_pd()

__INTRIN_INLINE_SSE2 void _mm_stream_pd ( double p,
__m128d  a 
)

Definition at line 1706 of file emmintrin.h.

1707 {
1708 #if HAS_BUILTIN(__builtin_nontemporal_store)
1709  __builtin_nontemporal_store((__v2df)a, (__v2df *)p);
1710 #else
1711  __builtin_ia32_movntpd(p, a);
1712 #endif
1713 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
GLfloat GLfloat p
Definition: glext.h:8902

Referenced by store_nta().

◆ _mm_stream_si128()

__INTRIN_INLINE_SSE2 void _mm_stream_si128 ( __m128i *  p,
__m128i  a 
)

Definition at line 1715 of file emmintrin.h.

1716 {
1717 #if HAS_BUILTIN(__builtin_nontemporal_store)
1718  __builtin_nontemporal_store((__v2di)a, (__v2di*)p);
1719 #else
1720  __builtin_ia32_movntdq(p, a);
1721 #endif
1722 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_stream_si32()

__INTRIN_INLINE_SSE2 void _mm_stream_si32 ( int p,
int  a 
)

Definition at line 1724 of file emmintrin.h.

1725 {
1726  __builtin_ia32_movnti(p, a);
1727 }
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
GLfloat GLfloat p
Definition: glext.h:8902

◆ _mm_sub_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_sub_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1265 of file emmintrin.h.

1266 {
1267  return (__m128i)((__v8hu)a - (__v8hu)b);
1268 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I16vec8::operator -=(), Is16vec8::operator -=(), and Iu16vec8::operator -=().

◆ _mm_sub_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_sub_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1270 of file emmintrin.h.

1271 {
1272  return (__m128i)((__v4su)a - (__v4su)b);
1273 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I32vec4::operator -=(), Is32vec4::operator -=(), and Iu32vec4::operator -=().

◆ _mm_sub_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_sub_epi64 ( __m128i  a,
__m128i  b 
)

Definition at line 1280 of file emmintrin.h.

1281 {
1282  return (__m128i)((__v2du)a - (__v2du)b);
1283 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I64vec2::operator -=().

◆ _mm_sub_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_sub_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1260 of file emmintrin.h.

1261 {
1262  return (__m128i)((__v16qu)a - (__v16qu)b);
1263 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by I8vec16::operator -=(), Is8vec16::operator -=(), and Iu8vec16::operator -=().

◆ _mm_sub_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_sub_pd ( __m128d  a,
__m128d  b 
)

Definition at line 584 of file emmintrin.h.

585 {
586  return (__m128d)((__v2df)a - (__v2df)b);
587 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2::operator -=().

◆ _mm_sub_sd()

__INTRIN_INLINE_SSE2 __m128d _mm_sub_sd ( __m128d  a,
__m128d  b 
)

Definition at line 578 of file emmintrin.h.

579 {
580  a[0] -= b[0];
581  return a;
582 }
#define a
Definition: ke_i.h:78
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_sub_si64()

__INTRIN_INLINE_MMX __m64 _mm_sub_si64 ( __m64  a,
__m64  b 
)

Definition at line 1275 of file emmintrin.h.

1276 {
1277  return (__m64)__builtin_ia32_psubq((__v1di)a, (__v1di)b);
1278 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_subs_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_subs_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1294 of file emmintrin.h.

1295 {
1296 #if HAS_BUILTIN(__builtin_elementwise_sub_sat)
1297  return (__m128i)__builtin_elementwise_sub_sat((__v8hi)a, (__v8hi)b);
1298 #else
1299  return (__m128i)__builtin_ia32_psubsw128((__v8hi)a, (__v8hi)b);
1300 #endif
1301 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_sub().

◆ _mm_subs_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_subs_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1285 of file emmintrin.h.

1286 {
1287 #if HAS_BUILTIN(__builtin_elementwise_sub_sat)
1288  return (__m128i)__builtin_elementwise_sub_sat((__v16qs)a, (__v16qs)b);
1289 #else
1290  return (__m128i)__builtin_ia32_psubsb128((__v16qi)a, (__v16qi)b);
1291 #endif
1292 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_sub().

◆ _mm_subs_epu16()

__INTRIN_INLINE_SSE2 __m128i _mm_subs_epu16 ( __m128i  a,
__m128i  b 
)

Definition at line 1312 of file emmintrin.h.

1313 {
1314 #if HAS_BUILTIN(__builtin_elementwise_sub_sat)
1315  return (__m128i)__builtin_elementwise_sub_sat((__v8hu)a, (__v8hu)b);
1316 #else
1317  return (__m128i)__builtin_ia32_psubusw128((__v8hi)a, (__v8hi)b);
1318 #endif
1319 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_sub().

◆ _mm_subs_epu8()

__INTRIN_INLINE_SSE2 __m128i _mm_subs_epu8 ( __m128i  a,
__m128i  b 
)

Definition at line 1303 of file emmintrin.h.

1304 {
1305 #if HAS_BUILTIN(__builtin_elementwise_sub_sat)
1306  return (__m128i)__builtin_elementwise_sub_sat((__v16qu)a, (__v16qu)b);
1307 #else
1308  return (__m128i)__builtin_ia32_psubusb128((__v16qi)a, (__v16qi)b);
1309 #endif
1310 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by sat_sub().

◆ _mm_ucomieq_sd()

__INTRIN_INLINE_SSE2 int _mm_ucomieq_sd ( __m128d  a,
__m128d  b 
)

Definition at line 816 of file emmintrin.h.

817 {
818  return __builtin_ia32_ucomisdeq((__v2df)a, (__v2df)b);
819 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_ucomige_sd()

__INTRIN_INLINE_SSE2 int _mm_ucomige_sd ( __m128d  a,
__m128d  b 
)

Definition at line 836 of file emmintrin.h.

837 {
838  return __builtin_ia32_ucomisdge((__v2df)a, (__v2df)b);
839 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_ucomigt_sd()

__INTRIN_INLINE_SSE2 int _mm_ucomigt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 831 of file emmintrin.h.

832 {
833  return __builtin_ia32_ucomisdgt((__v2df)a, (__v2df)b);
834 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_ucomile_sd()

__INTRIN_INLINE_SSE2 int _mm_ucomile_sd ( __m128d  a,
__m128d  b 
)

Definition at line 826 of file emmintrin.h.

827 {
828  return __builtin_ia32_ucomisdle((__v2df)a, (__v2df)b);
829 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_ucomilt_sd()

__INTRIN_INLINE_SSE2 int _mm_ucomilt_sd ( __m128d  a,
__m128d  b 
)

Definition at line 821 of file emmintrin.h.

822 {
823  return __builtin_ia32_ucomisdlt((__v2df)a, (__v2df)b);
824 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_ucomineq_sd()

__INTRIN_INLINE_SSE2 int _mm_ucomineq_sd ( __m128d  a,
__m128d  b 
)

Definition at line 841 of file emmintrin.h.

842 {
843  return __builtin_ia32_ucomisdneq((__v2df)a, (__v2df)b);
844 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ _mm_undefined_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_undefined_pd ( void  )

Definition at line 1018 of file emmintrin.h.

1019 {
1020 #if HAS_BUILTIN(__builtin_ia32_undef128)
1021  return (__m128d)__builtin_ia32_undef128();
1022 #else
1023  __m128d undef = undef;
1024  return undef;
1025 #endif
1026 }

◆ _mm_undefined_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_undefined_si128 ( void  )

Definition at line 1555 of file emmintrin.h.

1556 {
1557 #if HAS_BUILTIN(__builtin_ia32_undef128)
1558  return (__m128i)__builtin_ia32_undef128();
1559 #else
1560  __m128i undef = undef;
1561  return undef;
1562 #endif
1563 }

◆ _mm_unpackhi_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_unpackhi_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1790 of file emmintrin.h.

1791 {
1792 #if HAS_BUILTIN(__builtin_shufflevector)
1793  return (__m128i)__builtin_shufflevector((__v8hi)a, (__v8hi)b, 4, 8 + 4, 5,
1794  8 + 5, 6, 8 + 6, 7, 8 + 7);
1795 #else
1796  return (__m128i)__builtin_ia32_punpckhwd128((__v8hi)a, (__v8hi)b);
1797 #endif
1798 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_high().

◆ _mm_unpackhi_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_unpackhi_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1800 of file emmintrin.h.

1801 {
1802 #if HAS_BUILTIN(__builtin_shufflevector)
1803  return (__m128i)__builtin_shufflevector((__v4si)a, (__v4si)b, 2, 4 + 2, 3,
1804  4 + 3);
1805 #else
1806  return (__m128i)__builtin_ia32_punpckhdq128((__v4si)a, (__v4si)b);
1807 #endif
1808 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_high().

◆ _mm_unpackhi_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_unpackhi_epi64 ( __m128i  a,
__m128i  b 
)

Definition at line 1810 of file emmintrin.h.

1811 {
1812 #if HAS_BUILTIN(__builtin_shufflevector)
1813  return (__m128i)__builtin_shufflevector((__v2di)a, (__v2di)b, 1, 2 + 1);
1814 #else
1815  return (__m128i)__builtin_ia32_punpckhqdq128((__v2di)a, (__v2di)b);
1816 #endif
1817 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_high().

◆ _mm_unpackhi_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_unpackhi_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1779 of file emmintrin.h.

1780 {
1781 #if HAS_BUILTIN(__builtin_shufflevector)
1782  return (__m128i)__builtin_shufflevector(
1783  (__v16qi)a, (__v16qi)b, 8, 16 + 8, 9, 16 + 9, 10, 16 + 10, 11,
1784  16 + 11, 12, 16 + 12, 13, 16 + 13, 14, 16 + 14, 15, 16 + 15);
1785 #else
1786  return (__m128i)__builtin_ia32_punpckhbw128((__v16qi)a, (__v16qi)b);
1787 #endif
1788 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_high().

◆ _mm_unpackhi_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_unpackhi_pd ( __m128d  a,
__m128d  b 
)

Definition at line 1878 of file emmintrin.h.

1879 {
1880 #if HAS_BUILTIN(__builtin_shufflevector)
1881  return __builtin_shufflevector((__v2df)a, (__v2df)b, 1, 2 + 1);
1882 #else
1883  return (__m128d)__builtin_ia32_unpckhpd((__v2df)a, (__v2df)b);
1884 #endif
1885 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_high().

◆ _mm_unpacklo_epi16()

__INTRIN_INLINE_SSE2 __m128i _mm_unpacklo_epi16 ( __m128i  a,
__m128i  b 
)

Definition at line 1830 of file emmintrin.h.

1831 {
1832 #if HAS_BUILTIN(__builtin_shufflevector)
1833  return (__m128i)__builtin_shufflevector((__v8hi)a, (__v8hi)b, 0, 8 + 0, 1,
1834  8 + 1, 2, 8 + 2, 3, 8 + 3);
1835 #else
1836  return (__m128i)__builtin_ia32_punpcklwd128((__v8hi)a, (__v8hi)b);
1837 #endif
1838 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_low().

◆ _mm_unpacklo_epi32()

__INTRIN_INLINE_SSE2 __m128i _mm_unpacklo_epi32 ( __m128i  a,
__m128i  b 
)

Definition at line 1840 of file emmintrin.h.

1841 {
1842 #if HAS_BUILTIN(__builtin_shufflevector)
1843  return (__m128i)__builtin_shufflevector((__v4si)a, (__v4si)b, 0, 4 + 0, 1,
1844  4 + 1);
1845 #else
1846  return (__m128i)__builtin_ia32_punpckldq128((__v4si)a, (__v4si)b);
1847 #endif
1848 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_low().

◆ _mm_unpacklo_epi64()

__INTRIN_INLINE_SSE2 __m128i _mm_unpacklo_epi64 ( __m128i  a,
__m128i  b 
)

Definition at line 1850 of file emmintrin.h.

1851 {
1852 #if HAS_BUILTIN(__builtin_shufflevector)
1853  return (__m128i)__builtin_shufflevector((__v2di)a, (__v2di)b, 0, 2 + 0);
1854 #else
1855  return (__m128i)__builtin_ia32_punpcklqdq128((__v2di)a, (__v2di)b);
1856 #endif
1857 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_low().

◆ _mm_unpacklo_epi8()

__INTRIN_INLINE_SSE2 __m128i _mm_unpacklo_epi8 ( __m128i  a,
__m128i  b 
)

Definition at line 1819 of file emmintrin.h.

1820 {
1821 #if HAS_BUILTIN(__builtin_shufflevector)
1822  return (__m128i)__builtin_shufflevector(
1823  (__v16qi)a, (__v16qi)b, 0, 16 + 0, 1, 16 + 1, 2, 16 + 2, 3, 16 + 3, 4,
1824  16 + 4, 5, 16 + 5, 6, 16 + 6, 7, 16 + 7);
1825 #else
1826  return (__m128i)__builtin_ia32_punpcklbw128((__v16qi)a, (__v16qi)b);
1827 #endif
1828 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_low().

◆ _mm_unpacklo_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_unpacklo_pd ( __m128d  a,
__m128d  b 
)

Definition at line 1887 of file emmintrin.h.

1888 {
1889 #if HAS_BUILTIN(__builtin_shufflevector)
1890  return __builtin_shufflevector((__v2df)a, (__v2df)b, 0, 2 + 0);
1891 #else
1892  return (__m128d)__builtin_ia32_unpcklpd((__v2df)a, (__v2df)b);
1893 #endif
1894 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by unpack_low().

◆ _mm_xor_pd()

__INTRIN_INLINE_SSE2 __m128d _mm_xor_pd ( __m128d  a,
__m128d  b 
)

Definition at line 657 of file emmintrin.h.

658 {
659  return (__m128d)((__v2du)a ^ (__v2du)b);
660 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by F64vec2::operator ^=().

◆ _mm_xor_si128()

__INTRIN_INLINE_SSE2 __m128i _mm_xor_si128 ( __m128i  a,
__m128i  b 
)

Definition at line 1336 of file emmintrin.h.

1337 {
1338  return (__m128i)((__v2du)a ^ (__v2du)b);
1339 }
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

Referenced by operator^(), M128::operator^=(), I128vec1::operator^=(), I64vec2::operator^=(), I32vec4::operator^=(), Is32vec4::operator^=(), Iu32vec4::operator^=(), I16vec8::operator^=(), Is16vec8::operator^=(), Iu16vec8::operator^=(), I8vec16::operator^=(), Is8vec16::operator^=(), and Iu8vec16::operator^=().