9inline SSESimdReal operator- (SSESimdReal a,SSESimdReal b)
12 _mm_sub_pd (a.v0,b.v0)
13 , _mm_sub_pd (a.v1,b.v1)
20 _mm_sub_pd (a.v0,_mm_set1_pd(b))
21 , _mm_sub_pd (a.v1,_mm_set1_pd(b))
28 _mm_sub_pd (_mm_set1_pd(b), a.v0)
29 , _mm_sub_pd (_mm_set1_pd(b), a.v1)
33inline SSESimdReal operator+ (SSESimdReal a,SSESimdReal b)
36 _mm_add_pd (a.v0,b.v0)
37 , _mm_add_pd (a.v1,b.v1)
44 _mm_add_pd (a.v0,_mm_set1_pd(b))
45 , _mm_add_pd (a.v1,_mm_set1_pd(b))
52 _mm_add_pd (_mm_set1_pd(b), a.v0)
53 , _mm_add_pd (_mm_set1_pd(b), a.v1)
57inline SSESimdReal operator* (SSESimdReal a,SSESimdReal b)
60 _mm_mul_pd (a.v0,b.v0)
61 , _mm_mul_pd (a.v1,b.v1)
68 _mm_mul_pd (a.v0,_mm_set1_pd(b))
69 , _mm_mul_pd (a.v1,_mm_set1_pd(b))
76 _mm_mul_pd (_mm_set1_pd(b), a.v0)
77 , _mm_mul_pd (_mm_set1_pd(b), a.v1)
81inline SSESimdReal operator/ (SSESimdReal a,SSESimdReal b)
84 _mm_div_pd (a.v0,b.v0)
85 , _mm_div_pd (a.v1,b.v1)
92 _mm_div_pd (a.v0,_mm_set1_pd(b))
93 , _mm_div_pd (a.v1,_mm_set1_pd(b))
100 _mm_div_pd (_mm_set1_pd(b), a.v0)
101 , _mm_div_pd (_mm_set1_pd(b), a.v1)
106inline SSESimdReal min (SSESimdReal a,SSESimdReal b)
109 _mm_min_pd (a.v0,b.v0)
110 , _mm_min_pd (a.v1,b.v1)
117 _mm_min_pd (a.v0,_mm_set1_pd(b))
118 , _mm_min_pd (a.v1,_mm_set1_pd(b))
125 _mm_min_pd (_mm_set1_pd(b), a.v0)
126 , _mm_min_pd (_mm_set1_pd(b), a.v1)
132inline SSESimdReal max (SSESimdReal a,SSESimdReal b)
135 _mm_max_pd (a.v0,b.v0)
136 , _mm_max_pd (a.v1,b.v1)
143 _mm_max_pd (a.v0,_mm_set1_pd(b))
144 , _mm_max_pd (a.v1,_mm_set1_pd(b))
151 _mm_max_pd (_mm_set1_pd(b), a.v0)
152 , _mm_max_pd (_mm_set1_pd(b), a.v1)
166 return SSESimdReal::fromScalar(math::sqrt(za[0]),math::sqrt(za[1]),math::sqrt(za[2]),math::sqrt(za[3]));
175 return SSESimdReal::fromScalar(math::exp(za[0]),math::exp(za[1]),math::exp(za[2]),math::exp(za[3]));
184 return SSESimdReal::fromScalar(math::log10(za[0]),math::log10(za[1]),math::log10(za[2]),math::log10(za[3]));
double Real
Type représentant un réel.
SSESimdX4Real SSESimdReal
Vecteur de 'double' en implémentation par SSE.