Intel® C++ Compiler Classic Developer Guide and Reference

ID 767249
Date 3/31/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

_mm256_maskload_pd, _mm_maskload_pd

Loads packed double-precision floating point values according to mask values. The corresponding Intel® AVX instruction is VMASKMOVPD.

Syntax

extern __m256d _mm256_maskload_pd(double const *a, __m256i mask);

extern __m128d _mm_maskload_pd(double const *a, __m128i mask);

Arguments

*a

pointer to a 256/128-bit memory location that can hold constant float64 values

mask

integer value calculated based on the most-significant-bit of each quadword of a mask register

Description

Loads packed double-precision floating point (float64) values from the 256/128-bit memory location pointed to by a, into a destination register using the mask value.

The mask is calculated from the most significant bit of each qword of the mask register. If any of the bits of the mask is set to zero, the corresponding value from the memory location is not loaded, and the corresponding field of the destination vector is set to zero.

Returns

A 256/128-bit register with float64 values.