# _mm256_mulhi_epu16

Multiplies unsigned packed 16/32-bit integer data elements of two vectors and stores high bits. The corresponding Intel® AVX2 instruction is VPMULHUW.

## Syntax

extern __m256i _mm256_mulhi_epu16(__m256i s1, __m256i s2);

## Arguments

s1 | integer source vector used for the operation
s2 | integer source vector used for the operation

## Description

Performs a SIMD unsigned multiply of the packed unsigned 16-bit integers in source vectors s1 and s2 and stores the high 16 bits of each intermediate 32-bit result in the destination vector.

## Returns

Result of the multiplication operation.

Parent topic: Intrinsics for Arithmetic Operations