clang
8.0.0svn

#include <pmmintrin.h>
Go to the source code of this file.
Macros  
#define  __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("ssse3"), __min_vector_width__(64))) 
#define  __DEFAULT_FN_ATTRS_MMX __attribute__((__always_inline__, __nodebug__, __target__("mmx,ssse3"), __min_vector_width__(64))) 
#define  _mm_alignr_epi8(a, b, n) 
Concatenates the two 128bit integer vector operands, and rightshifts the result by the number of bytes specified in the immediate operand. More...  
#define  _mm_alignr_pi8(a, b, n) (__m64)__builtin_ia32_palignr((__v8qi)(__m64)(a), (__v8qi)(__m64)(b), (n)) 
Concatenates the two 64bit integer vector operands, and rightshifts the result by the number of bytes specified in the immediate operand. More...  
Functions  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_abs_pi8 (__m64 __a) 
Computes the absolute value of each of the packed 8bit signed integers in the source operand and stores the 8bit unsigned integer results in the destination. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_abs_epi8 (__m128i __a) 
Computes the absolute value of each of the packed 8bit signed integers in the source operand and stores the 8bit unsigned integer results in the destination. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_abs_pi16 (__m64 __a) 
Computes the absolute value of each of the packed 16bit signed integers in the source operand and stores the 16bit unsigned integer results in the destination. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_abs_epi16 (__m128i __a) 
Computes the absolute value of each of the packed 16bit signed integers in the source operand and stores the 16bit unsigned integer results in the destination. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_abs_pi32 (__m64 __a) 
Computes the absolute value of each of the packed 32bit signed integers in the source operand and stores the 32bit unsigned integer results in the destination. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_abs_epi32 (__m128i __a) 
Computes the absolute value of each of the packed 32bit signed integers in the source operand and stores the 32bit unsigned integer results in the destination. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_hadd_epi16 (__m128i __a, __m128i __b) 
Horizontally adds the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16]. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_hadd_epi32 (__m128i __a, __m128i __b) 
Horizontally adds the adjacent pairs of values contained in 2 packed 128bit vectors of [4 x i32]. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_hadd_pi16 (__m64 __a, __m64 __b) 
Horizontally adds the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16]. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_hadd_pi32 (__m64 __a, __m64 __b) 
Horizontally adds the adjacent pairs of values contained in 2 packed 64bit vectors of [2 x i32]. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_hadds_epi16 (__m128i __a, __m128i __b) 
Horizontally adds the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16]. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_hadds_pi16 (__m64 __a, __m64 __b) 
Horizontally adds the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16]. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_hsub_epi16 (__m128i __a, __m128i __b) 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16]. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_hsub_epi32 (__m128i __a, __m128i __b) 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 128bit vectors of [4 x i32]. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_hsub_pi16 (__m64 __a, __m64 __b) 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16]. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_hsub_pi32 (__m64 __a, __m64 __b) 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 64bit vectors of [2 x i32]. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_hsubs_epi16 (__m128i __a, __m128i __b) 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16]. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_hsubs_pi16 (__m64 __a, __m64 __b) 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16]. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_maddubs_epi16 (__m128i __a, __m128i __b) 
Multiplies corresponding pairs of packed 8bit unsigned integer values contained in the first source operand and packed 8bit signed integer values contained in the second source operand, adds pairs of contiguous products with signed saturation, and writes the 16bit sums to the corresponding bits in the destination. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_maddubs_pi16 (__m64 __a, __m64 __b) 
Multiplies corresponding pairs of packed 8bit unsigned integer values contained in the first source operand and packed 8bit signed integer values contained in the second source operand, adds pairs of contiguous products with signed saturation, and writes the 16bit sums to the corresponding bits in the destination. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_mulhrs_epi16 (__m128i __a, __m128i __b) 
Multiplies packed 16bit signed integer values, truncates the 32bit products to the 18 most significant bits by rightshifting, rounds the truncated value by adding 1, and writes bits [16:1] to the destination. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_mulhrs_pi16 (__m64 __a, __m64 __b) 
Multiplies packed 16bit signed integer values, truncates the 32bit products to the 18 most significant bits by rightshifting, rounds the truncated value by adding 1, and writes bits [16:1] to the destination. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_shuffle_epi8 (__m128i __a, __m128i __b) 
Copies the 8bit integers from a 128bit integer vector to the destination or clears 8bit values in the destination, as specified by the second source operand. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_shuffle_pi8 (__m64 __a, __m64 __b) 
Copies the 8bit integers from a 64bit integer vector to the destination or clears 8bit values in the destination, as specified by the second source operand. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_sign_epi8 (__m128i __a, __m128i __b) 
For each 8bit integer in the first source operand, perform one of the following actions as specified by the second source operand. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_sign_epi16 (__m128i __a, __m128i __b) 
For each 16bit integer in the first source operand, perform one of the following actions as specified by the second source operand. More...  
static __inline__ __m128i __DEFAULT_FN_ATTRS  _mm_sign_epi32 (__m128i __a, __m128i __b) 
For each 32bit integer in the first source operand, perform one of the following actions as specified by the second source operand. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_sign_pi8 (__m64 __a, __m64 __b) 
For each 8bit integer in the first source operand, perform one of the following actions as specified by the second source operand. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_sign_pi16 (__m64 __a, __m64 __b) 
For each 16bit integer in the first source operand, perform one of the following actions as specified by the second source operand. More...  
static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX  _mm_sign_pi32 (__m64 __a, __m64 __b) 
For each 32bit integer in the first source operand, perform one of the following actions as specified by the second source operand. More...  
#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("ssse3"), __min_vector_width__(64))) 
Definition at line 30 of file tmmintrin.h.
Referenced by _mm_abs_pi16(), _mm_abs_pi32(), _mm_abs_pi8(), _mm_hadd_epi16(), _mm_hadd_pi32(), _mm_hadds_pi16(), _mm_hsub_epi16(), _mm_hsub_pi32(), _mm_hsubs_pi16(), _mm_maddubs_pi16(), _mm_mulhrs_pi16(), _mm_shuffle_pi8(), _mm_sign_epi16(), and _mm_sign_epi8().
#define __DEFAULT_FN_ATTRS_MMX __attribute__((__always_inline__, __nodebug__, __target__("mmx,ssse3"), __min_vector_width__(64))) 
Definition at line 31 of file tmmintrin.h.
Referenced by _mm_abs_epi16(), _mm_abs_epi8(), _mm_hadd_epi32(), _mm_hadd_pi16(), _mm_hadds_epi16(), _mm_hsub_epi32(), _mm_hsub_pi16(), _mm_hsubs_epi16(), _mm_maddubs_epi16(), _mm_mulhrs_epi16(), _mm_shuffle_epi8(), _mm_sign_epi32(), _mm_sign_pi16(), and _mm_sign_pi8().
#define _mm_alignr_epi8  (  a,  
b,  
n  
) 
Concatenates the two 128bit integer vector operands, and rightshifts the result by the number of bytes specified in the immediate operand.
This intrinsic corresponds to the PALIGNR
instruction.
a  A 128bit vector of [16 x i8] containing one of the source operands. 
b  A 128bit vector of [16 x i8] containing one of the source operands. 
n  An immediate operand specifying how many bytes to rightshift the result. 
Definition at line 161 of file tmmintrin.h.
#define _mm_alignr_pi8  (  a,  
b,  
n  
)  (__m64)__builtin_ia32_palignr((__v8qi)(__m64)(a), (__v8qi)(__m64)(b), (n)) 
Concatenates the two 64bit integer vector operands, and rightshifts the result by the number of bytes specified in the immediate operand.
This intrinsic corresponds to the PALIGNR
instruction.
a  A 64bit vector of [8 x i8] containing one of the source operands. 
b  A 64bit vector of [8 x i8] containing one of the source operands. 
n  An immediate operand specifying how many bytes to rightshift the result. 
Definition at line 184 of file tmmintrin.h.

static 
Computes the absolute value of each of the packed 16bit signed integers in the source operand and stores the 16bit unsigned integer results in the destination.
This intrinsic corresponds to the VPABSW
instruction.
__a  A 128bit vector of [8 x i16]. 
Definition at line 100 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.
Referenced by _mm_mask_abs_epi16(), and _mm_maskz_abs_epi16().

static 
Computes the absolute value of each of the packed 32bit signed integers in the source operand and stores the 32bit unsigned integer results in the destination.
This intrinsic corresponds to the VPABSD
instruction.
__a  A 128bit vector of [4 x i32]. 
Definition at line 136 of file tmmintrin.h.
Referenced by _mm_mask_abs_epi32(), and _mm_maskz_abs_epi32().

static 
Computes the absolute value of each of the packed 8bit signed integers in the source operand and stores the 8bit unsigned integer results in the destination.
This intrinsic corresponds to the VPABSB
instruction.
__a  A 128bit vector of [16 x i8]. 
Definition at line 64 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.
Referenced by _mm_mask_abs_epi8(), and _mm_maskz_abs_epi8().

static 
Computes the absolute value of each of the packed 16bit signed integers in the source operand and stores the 16bit unsigned integer results in the destination.
This intrinsic corresponds to the PABSW
instruction.
__a  A 64bit vector of [4 x i16]. 
Definition at line 82 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Computes the absolute value of each of the packed 32bit signed integers in the source operand and stores the 32bit unsigned integer results in the destination.
This intrinsic corresponds to the PABSD
instruction.
__a  A 64bit vector of [2 x i32]. 
Definition at line 118 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Computes the absolute value of each of the packed 8bit signed integers in the source operand and stores the 8bit unsigned integer results in the destination.
This intrinsic corresponds to the PABSB
instruction.
__a  A 64bit vector of [8 x i8]. 
Definition at line 46 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Horizontally adds the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16].
This intrinsic corresponds to the VPHADDW
instruction.
__a  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal sums of the values are stored in the lower bits of the destination. 
__b  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal sums of the values are stored in the upper bits of the destination. 
Definition at line 205 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Horizontally adds the adjacent pairs of values contained in 2 packed 128bit vectors of [4 x i32].
This intrinsic corresponds to the VPHADDD
instruction.
__a  A 128bit vector of [4 x i32] containing one of the source operands. The horizontal sums of the values are stored in the lower bits of the destination. 
__b  A 128bit vector of [4 x i32] containing one of the source operands. The horizontal sums of the values are stored in the upper bits of the destination. 
Definition at line 228 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
Horizontally adds the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16].
This intrinsic corresponds to the PHADDW
instruction.
__a  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal sums of the values are stored in the lower bits of the destination. 
__b  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal sums of the values are stored in the upper bits of the destination. 
Definition at line 251 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
Horizontally adds the adjacent pairs of values contained in 2 packed 64bit vectors of [2 x i32].
This intrinsic corresponds to the PHADDD
instruction.
__a  A 64bit vector of [2 x i32] containing one of the source operands. The horizontal sums of the values are stored in the lower bits of the destination. 
__b  A 64bit vector of [2 x i32] containing one of the source operands. The horizontal sums of the values are stored in the upper bits of the destination. 
Definition at line 274 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Horizontally adds the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16].
Positive sums greater than 0x7FFF are saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to 0x8000.
This intrinsic corresponds to the VPHADDSW
instruction.
__a  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal sums of the values are stored in the lower bits of the destination. 
__b  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal sums of the values are stored in the upper bits of the destination. 
Definition at line 299 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
Horizontally adds the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16].
Positive sums greater than 0x7FFF are saturated to 0x7FFF. Negative sums less than 0x8000 are saturated to 0x8000.
This intrinsic corresponds to the PHADDSW
instruction.
__a  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal sums of the values are stored in the lower bits of the destination. 
__b  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal sums of the values are stored in the upper bits of the destination. 
Definition at line 324 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16].
This intrinsic corresponds to the VPHSUBW
instruction.
__a  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal differences between the values are stored in the lower bits of the destination. 
__b  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal differences between the values are stored in the upper bits of the destination. 
Definition at line 347 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 128bit vectors of [4 x i32].
This intrinsic corresponds to the VPHSUBD
instruction.
__a  A 128bit vector of [4 x i32] containing one of the source operands. The horizontal differences between the values are stored in the lower bits of the destination. 
__b  A 128bit vector of [4 x i32] containing one of the source operands. The horizontal differences between the values are stored in the upper bits of the destination. 
Definition at line 370 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16].
This intrinsic corresponds to the PHSUBW
instruction.
__a  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal differences between the values are stored in the lower bits of the destination. 
__b  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal differences between the values are stored in the upper bits of the destination. 
Definition at line 393 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 64bit vectors of [2 x i32].
This intrinsic corresponds to the PHSUBD
instruction.
__a  A 64bit vector of [2 x i32] containing one of the source operands. The horizontal differences between the values are stored in the lower bits of the destination. 
__b  A 64bit vector of [2 x i32] containing one of the source operands. The horizontal differences between the values are stored in the upper bits of the destination. 
Definition at line 416 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 128bit vectors of [8 x i16].
Positive differences greater than 0x7FFF are saturated to 0x7FFF. Negative differences less than 0x8000 are saturated to 0x8000.
This intrinsic corresponds to the VPHSUBSW
instruction.
__a  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal differences between the values are stored in the lower bits of the destination. 
__b  A 128bit vector of [8 x i16] containing one of the source operands. The horizontal differences between the values are stored in the upper bits of the destination. 
Definition at line 441 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
Horizontally subtracts the adjacent pairs of values contained in 2 packed 64bit vectors of [4 x i16].
Positive differences greater than 0x7FFF are saturated to 0x7FFF. Negative differences less than 0x8000 are saturated to 0x8000.
This intrinsic corresponds to the PHSUBSW
instruction.
__a  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal differences between the values are stored in the lower bits of the destination. 
__b  A 64bit vector of [4 x i16] containing one of the source operands. The horizontal differences between the values are stored in the upper bits of the destination. 
Definition at line 466 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Multiplies corresponding pairs of packed 8bit unsigned integer values contained in the first source operand and packed 8bit signed integer values contained in the second source operand, adds pairs of contiguous products with signed saturation, and writes the 16bit sums to the corresponding bits in the destination.
For example, bits [7:0] of both operands are multiplied, bits [15:8] of both operands are multiplied, and the sum of both results is written to bits [15:0] of the destination.
This intrinsic corresponds to the VPMADDUBSW
instruction.
__a  A 128bit integer vector containing the first source operand. 
__b  A 128bit integer vector containing the second source operand. 
Definition at line 500 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.
Referenced by _mm_mask_maddubs_epi16(), and _mm_maskz_maddubs_epi16().

static 
Multiplies corresponding pairs of packed 8bit unsigned integer values contained in the first source operand and packed 8bit signed integer values contained in the second source operand, adds pairs of contiguous products with signed saturation, and writes the 16bit sums to the corresponding bits in the destination.
For example, bits [7:0] of both operands are multiplied, bits [15:8] of both operands are multiplied, and the sum of both results is written to bits [15:0] of the destination.
This intrinsic corresponds to the PMADDUBSW
instruction.
__a  A 64bit integer vector containing the first source operand. 
__b  A 64bit integer vector containing the second source operand. 
Definition at line 530 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Multiplies packed 16bit signed integer values, truncates the 32bit products to the 18 most significant bits by rightshifting, rounds the truncated value by adding 1, and writes bits [16:1] to the destination.
This intrinsic corresponds to the VPMULHRSW
instruction.
__a  A 128bit vector of [8 x i16] containing one of the source operands. 
__b  A 128bit vector of [8 x i16] containing one of the source operands. 
Definition at line 550 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.
Referenced by _mm_mask_mulhrs_epi16(), and _mm_maskz_mulhrs_epi16().

static 
Multiplies packed 16bit signed integer values, truncates the 32bit products to the 18 most significant bits by rightshifting, rounds the truncated value by adding 1, and writes bits [16:1] to the destination.
This intrinsic corresponds to the PMULHRSW
instruction.
__a  A 64bit vector of [4 x i16] containing one of the source operands. 
__b  A 64bit vector of [4 x i16] containing one of the source operands. 
Definition at line 570 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
Copies the 8bit integers from a 128bit integer vector to the destination or clears 8bit values in the destination, as specified by the second source operand.
This intrinsic corresponds to the VPSHUFB
instruction.
__a  A 128bit integer vector containing the values to be copied. 
__b  A 128bit integer vector containing control bytes corresponding to positions in the destination: Bit 7: 1: Clear the corresponding byte in the destination. 0: Copy the selected source byte to the corresponding byte in the destination. Bits [6:4] Reserved. Bits [3:0] select the source byte to be copied. 
Definition at line 596 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.
Referenced by _mm_mask_shuffle_epi8(), and _mm_maskz_shuffle_epi8().

static 
Copies the 8bit integers from a 64bit integer vector to the destination or clears 8bit values in the destination, as specified by the second source operand.
This intrinsic corresponds to the PSHUFB
instruction.
__a  A 64bit integer vector containing the values to be copied. 
__b  A 64bit integer vector containing control bytes corresponding to positions in the destination: Bit 7: 1: Clear the corresponding byte in the destination. 0: Copy the selected source byte to the corresponding byte in the destination. Bits [3:0] select the source byte to be copied. 
Definition at line 621 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
For each 16bit integer in the first source operand, perform one of the following actions as specified by the second source operand.
If the word in the second source is negative, calculate the two's complement of the corresponding word in the first source, and write that value to the destination. If the word in the second source is positive, copy the corresponding word from the first source to the destination. If the word in the second source is zero, clear the corresponding word in the destination.
This intrinsic corresponds to the VPSIGNW
instruction.
__a  A 128bit integer vector containing the values to be copied. 
__b  A 128bit integer vector containing control words corresponding to positions in the destination. 
Definition at line 673 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
For each 32bit integer in the first source operand, perform one of the following actions as specified by the second source operand.
If the doubleword in the second source is negative, calculate the two's complement of the corresponding word in the first source, and write that value to the destination. If the doubleword in the second source is positive, copy the corresponding word from the first source to the destination. If the doubleword in the second source is zero, clear the corresponding word in the destination.
This intrinsic corresponds to the VPSIGND
instruction.
__a  A 128bit integer vector containing the values to be copied. 
__b  A 128bit integer vector containing control doublewords corresponding to positions in the destination. 
Definition at line 699 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
For each 8bit integer in the first source operand, perform one of the following actions as specified by the second source operand.
If the byte in the second source is negative, calculate the two's complement of the corresponding byte in the first source, and write that value to the destination. If the byte in the second source is positive, copy the corresponding byte from the first source to the destination. If the byte in the second source is zero, clear the corresponding byte in the destination.
This intrinsic corresponds to the VPSIGNB
instruction.
__a  A 128bit integer vector containing the values to be copied. 
__b  A 128bit integer vector containing control bytes corresponding to positions in the destination. 
Definition at line 647 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS.

static 
For each 16bit integer in the first source operand, perform one of the following actions as specified by the second source operand.
If the word in the second source is negative, calculate the two's complement of the corresponding word in the first source, and write that value to the destination. If the word in the second source is positive, copy the corresponding word from the first source to the destination. If the word in the second source is zero, clear the corresponding word in the destination.
This intrinsic corresponds to the PSIGNW
instruction.
__a  A 64bit integer vector containing the values to be copied. 
__b  A 64bit integer vector containing control words corresponding to positions in the destination. 
Definition at line 751 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.

static 
For each 32bit integer in the first source operand, perform one of the following actions as specified by the second source operand.
If the doubleword in the second source is negative, calculate the two's complement of the corresponding doubleword in the first source, and write that value to the destination. If the doubleword in the second source is positive, copy the corresponding doubleword from the first source to the destination. If the doubleword in the second source is zero, clear the corresponding doubleword in the destination.
This intrinsic corresponds to the PSIGND
instruction.
__a  A 64bit integer vector containing the values to be copied. 
__b  A 64bit integer vector containing two control doublewords corresponding to positions in the destination. 
Definition at line 777 of file tmmintrin.h.

static 
For each 8bit integer in the first source operand, perform one of the following actions as specified by the second source operand.
If the byte in the second source is negative, calculate the two's complement of the corresponding byte in the first source, and write that value to the destination. If the byte in the second source is positive, copy the corresponding byte from the first source to the destination. If the byte in the second source is zero, clear the corresponding byte in the destination.
This intrinsic corresponds to the PSIGNB
instruction.
__a  A 64bit integer vector containing the values to be copied. 
__b  A 64bit integer vector containing control bytes corresponding to positions in the destination. 
Definition at line 725 of file tmmintrin.h.
References __DEFAULT_FN_ATTRS_MMX.