Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Microsoft Specific
Emits the Streaming SIMD Extensions 4 (SSE4) instruction pmovzxdq. This instruction performs a conversion of unsigned integers from 32-bit to 64-bit.
__m128i _mm_cvtepu32_epi64(
__m128i a
);
Parameters
- [in] a
A 128-bit parameter that contains two unsigned 32-bit integers in the lower 64 bits.
Return value
A 128-bit parameter that contains two 64-bit integers. These integers are zero-extended representations of the 32-bit integers that are supplied by a.
The result can be defined with the following equations:
r0 = a0
r1 = 0
r2 = a1
r3 = 0
Requirements
Intrinsic |
Architecture |
---|---|
_mm_cvtepu32_epi64 |
x86, x64 |
Header file <smmintrin.h>
Remarks
r0-r3 and a0-a3 are the sequentially ordered 32-bit components of return value r and parameter a, respectively, where r0 and a0 are the least significant 32 bits.
Before you use this intrinsic, software must ensure that the processor supports the instruction.
Example
#include <stdio.h>
#include <smmintrin.h>
int main ()
{
__m128i a;
a.m128i_u32[0] = 0;
a.m128i_u32[1] = 4294967295;
__m128i res = _mm_cvtepu32_epi64(a);
printf_s("Original lowest 32 bit integers:\n%u,\t%u\n\n",
a.m128i_u32[1], a.m128i_u32[0]);
printf_s("Resulting 64 bit integers:\n%I64i,\t%I64i\n",
res.m128i_i64[1], res.m128i_i64[0]);
return 0;
}
Original lowest 32 bit integers: 4294967295, 0 Resulting 64 bit integers: 4294967295, 0