Intel® C++ Compiler Classic Developer Guide and Reference

ID 767249
Date 7/13/2023
Public
Document Table of Contents

_pdep_u32/64

Transfer/scatter contiguous low order bits in the first source operand into the destination according to the mask in the second source operand. The corresponding Intel® AVX2 instruction is PDEP.

Syntax

extern unsigned int _pdep_u32(unsigned int source, unsigned int mask);

extern unsigned __int64 _pdep_u64(unsigned __int64 source, unsigned __int64 mask);

Arguments

source

the source operand from where the bits are transferred

mask

the mask value according to which the bits are transferred

Description

The intrinsics use a mask in the second source operand to transfer/scatter contiguous, low-order bits in the first source operand into the destination. It takes the low bits from the first source operand and deposit them in the destination at the corresponding bit locations that are set in the mask. All other bits (bits not set in mask) in the destination are set to 0.

Returns

Result of the operation