| Opcode | Encoding | 16-bit | 32-bit | 64-bit | CPUID Feature Flag(s) | Description |
|---|---|---|---|---|---|---|
66 0F 2A /rCVTPI2PS xmm1, mm1/m64 | rm | Invalid | Valid | Valid | sse2mmx | Convert packed doubleword integers from mm1/m64 into packed double-precision floating-point values. Store the result in xmm1. |
Encoding
| Encoding | Operand 1 | Operand 2 |
|---|---|---|
rm | ModRM.reg[w] | ModRM.r/m[r] |
Description
The CVTPI2PD instruction converts two packed doubleword integers from the source operand into single-precision floating-point values. The result is stored in the destination operand.
Operation
public void CVTPI2PD(SimdF64 dest, MmxI32 src)
{
dest[0] = ConvertToF64(src[0]);
dest[1] = ConvertToF64(src[1]);
}Intrinsics
__m64 _mm_cvtpi32_pd(__m128d a)