_mm_cvtsd_f64
Microsoft Specific
Extracts the lower order floating point value from the parameter.
double _mm_cvtsd_f64(
__m128d a
);
Parameters
- [in] a
A 128-bit parameter that contains a floating point value in the lowest 64 bits.
Return value
The result can be expressed with the following equation:
r := a0
Requirements
Intrinsic |
Architecture |
---|---|
_mm_cvtsd_f64 |
x86, x64 |
Header file <emmintrin.h>
Remarks
r is the 64-bit floating point result. a0 is the lower 64 bits of parameter a. The upper 64 bits of a are ignored.
This intrinsic does not map to any specific machine instruction.
Example
#include <stdio.h>
#include <emmintrin.h>
int main ()
{
__m128d a;
a.m128d_f64[0] = -200.5;
double res = _mm_cvtsd_f64(a);
printf_s("Original a: %I64f\n", a.m128d_f64[0]);
printf_s("Result res: %I64f\n", res);
return 0;
}
Original a: -200.500000
Result res: -200.500000