[PATCH 4/5] add volk_32f_s32f_x2_convert_8u kernel
authorDaniel Estévez <daniel@destevez.net>
Thu, 19 Jan 2023 17:01:25 +0000 (18:01 +0100)
committerA. Maitland Bottoms <bottoms@debian.org>
Sun, 16 Jul 2023 01:58:53 +0000 (02:58 +0100)
commit48d780cbb95a21e886b7d503ee7f6ed34f97212b
treedfc94a749cb4d1c2dea012d7da69e682859077bf
parent23c8c3e0d50d7a7be4ec8fb731895af2202ad94c
[PATCH 4/5] add volk_32f_s32f_x2_convert_8u kernel

This adds a kernel that performs conversion from float to uint8_t
using a scale and a bias, according to out = in * scale + bias. The
output is clamped to the interval [0, 255] and rounded to the nearest
integer.

The kernels are implemented mirroring those for
volk_32f_s32f_convert_8i, but there is an additional avx2_fma kernel,
since it makes sense to perform the scale and bias conversion using FMA
if it is available.

Signed-off-by: Daniel Estévez <daniel@destevez.net>
Gbp-Pq: Name 0004-add-volk_32f_s32f_x2_convert_8u-kernel.patch
docs/kernels.dox
kernels/volk/volk_32f_s32f_convertpuppet_8u.h [new file with mode: 0644]
kernels/volk/volk_32f_s32f_x2_convert_8u.h [new file with mode: 0644]
lib/kernel_tests.h