Intel® Streaming SIMD Extensions 2 (Intel® SSE2) intrinsics for integer load operations are listed in this topic. The prototypes for Intel® SSE2 intrinsics are in the emmintrin.h header file.

To use these intrinsics, include the immintrin.h file as follows:

#include <immintrin.h>

The results of each intrinsic operation are placed in registers. The information about what is placed in each register appears in the tables below, in the detailed explanation of each intrinsic. R, R0, and R1 represent the registers in which results are placed.

Intrinsic Name

Operation

Corresponding Intel® SSE2 Instruction

_mm_load_si128

Load

MOVDQA

_mm_loadu_si128

Load

MOVDQU

_mm_loadl_epi64

Load and zero

MOVQ

_mm_load_si128

__m128i _mm_load_si128(__m128i const*p);

Loads 128-bit value. Address p must be 16-byte aligned.

R

*p

_mm_loadu_si128

__m128i _mm_loadu_si128(__m128i const*p);

Loads 128-bit value. Address p not need be 16-byte aligned.

R

*p

_mm_loadl_epi64

__m128i _mm_loadl_epi64(__m128i const*p);

Load the lower 64 bits of the value pointed to by p into the lower 64 bits of the result, zeroing the upper 64 bits of the result.

R0

R1

*p[63:0]

0x0

有关编译器优化的更完整信息,请参阅优化通知