_mm256_srav_epi32
Classification
Header File
Instruction
VPSRAVD ymm, ymm, ymm
Synopsis
_mm256_srav_epi32(__m256i a, __m256i count);
Description
Shift packed 32-bit integers in "a" right by the amount specified by the corresponding element in "count" while shifting in sign bits, and store the results in "dst".
Operation
FOR j := 0 to 7
i := j*32
IF count[i+31:i] < 32
dst[i+31:i] := SignExtend32(a[i+31:i] >> count[i+31:i])
ELSE
dst[i+31:i] := (a[i+31] ? 0xFFFFFFFF : 0)
FI
ENDFOR
dst[MAX:256] := 0