The following table shows how to create and initialize F32vec objects with the Fvec classes.
Example | Intrinsic | Returns |
---|---|---|
Constructor Declaration | ||
F64vec2 A; F32vec4 B; F32vec1 C; |
N/A |
N/A |
__m128 Object Initialization | ||
F64vec2 A(__m128d mm); F32vec4 B(__m128 mm); F32vec1 C(__m128 mm); |
N/A |
N/A |
Double Initialization | ||
/* Initializes two doubles. */ |
_mm_set_pd |
A0
:= d0; |
F64vec2 A(double d0); /* Initializes both return values |
_mm_set1_pd |
A0
:= d0; |
Float Initialization | ||
F32vec4 A(float f3, float f2, F32vec4 A = F32vec4(float f3, float
f2, |
_mm_set_ps |
A0
:= f0; |
F32vec4 A(float f0); /* Initializes all return values |
_mm_set1_ps |
A0
:= f0; |
F32vec4 A(double d0); /* Initialize all return values with the same double-precision value. */ |
_mm_set1_ps(d) |
A0
:= d0; |
F32vec1 A(double d0); /* Initializes the lowest value of
A |
_mm_set_ss(d) |
A0
:= d0; |
F32vec1 B(float f0); /* Initializes the lowest value of
B |
_mm_set_ss |
B0
:= f0; |
F32vec1 B(int I); |
_mm_cvtsi32_ss |
B0
:= f0; |