Pack Operators

Is16vec8 pack_sat(Is32vec2 A,Is32vec2 B);

Pack the eight 32-bit values found in A and B into eight 16-bit values with signed saturation.

Corresponding intrinsic: _mm_packs_epi32

 

Is16vec4 pack_sat(Is32vec2 A,Is32vec2 B);

Pack the four 32-bit values found in A and B into eight 16-bit values with signed saturation.

Corresponding intrinsic: _mm_packs_pi32

 

Is8vec16 pack_sat(Is16vec4 A,Is16vec4 B);

Pack the sixteen 16-bit values found in A and B into sixteen 8-bit values with signed saturation.

Corresponding intrinsic: _mm_packs_epi16

 

Is8vec8 pack_sat(Is16vec4 A,Is16vec4 B);

Pack the eight 16-bit values found in A and B into eight 8-bit values with signed saturation.

Corresponding intrinsic: _mm_packs_pi16

 

Iu8vec16 packu_sat(Is16vec4 A,Is16vec4 B);

Pack the sixteen 16-bit values found in A and B into sixteen 8-bit values with unsigned saturation .

Corresponding intrinsic: _mm_packus_epi16

 

Iu8vec8 packu_sat(Is16vec4 A,Is16vec4 B);

Pack the eight 16-bit values found in A and B into eight 8-bit values with unsigned saturation.

Corresponding intrinsic: _mm_packs_pu16