Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Expand Minimize


Microsoft Specific

Generates the x64 extended form of the movd instruction, which extracts the low 64-bit integer from an __m128i structure.

__int64 _mm_cvtsi128_si64x( 
   __m128i value 

[in] value

An __m128i structure containing two 64-bit integer values.

The low doubleword of the input structure as a 64-bit integer.





Header file <intrin.h>

The value is copied from the XMM register represented by value into system memory. The __m128 structure represents an XMM register, so this intrinsic allows a value from the XMM register to be moved into system memory.

This routine is only available as an intrinsic.

// _mm_cvtsi128_si64x.cpp
// processor: x64
#include <intrin.h>
#include <stdio.h>

#pragma intrinsic(_mm_cvtsi128_si64x)

int main()
    __declspec(align(16)) __m128i c;
    __int64 b;

    // The following loads into system memory
    c.m128i_i64[0] = 180;
    c.m128i_i64[1] = 210;

    // Load c into the XMM Register
    c = _mm_load_si128 (&c);

    // Perform some operations
    // ...

    // Extract the first element of c back into
    // system memory
    b = _mm_cvtsi128_si64x(c);

   printf_s("%I64d\n", b );

Community Additions

© 2015 Microsoft