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_hsub_epi16/32

Horizontally subtracts adjacent signed packed 16/32-bit integer data elements of two vectors. The corresponding Intel® AVX2 instruction is VPHSUBW or VPHSUBD.

Syntax

extern __m256i _mm256_hsub_epi16(__m256i s1, __m256i s2);

extern __m256i _mm256_hsub_epi32(__m256i s1, __m256i s2);

Arguments

s1

integer source vector used for the operation

s2

integer source vector used for the operation

Description

Performs horizontal subtraction on each adjacent pair of 16- or 32-bit signed integers by subtracting the most significant word from the least significant word of each pair source vectors s2 and s2, and packs the signed 16- or 32-bit results to the destination vector.

Returns

Result of the horizontal subtraction operation.