On Wed, Sep 6, 2023 at 4:31 AM Jieqiang Wang <jieqiang.w...@arm.com> wrote:
>
> __mm_cmpeq_epi16 returns 0xFFFF if the corresponding 16-bit elements are
> equal. In original SSE2 implementation for function compare_signatures,
> it utilizes _mm_movemask_epi8 to create mask from the MSB of each 8-bit
> element, while we should only care about the MSB of lower 8-bit in each
> 16-bit element.
> For example, if the comparison result is all equal, SSE2 path returns
> 0xFFFF while NEON and default scalar path return 0x5555.
> Although this bug is not causing any negative effects since the caller
> function solely examines the trailing zeros of each match mask, we
> recommend this fix to ensure consistency with NEON and default scalar
> code behaviors.
>
> Fixes: c7d93df552c2 ("hash: use partial-key hashing")
> Cc: yipeng1.w...@intel.com
> Cc: sta...@dpdk.org
>
> Signed-off-by: Feifei Wang <feifei.wa...@arm.com>
> Signed-off-by: Jieqiang Wang <jieqiang.w...@arm.com>
> Reviewed-by: Ruifeng Wang <ruifeng.w...@arm.com>

A review from this library maintainers please?


-- 
David Marchand

Reply via email to