vppinfra: small optimization in clib_memset_u64

Type: improvement
Change-Id: I4b89c32c224caf8a3a4ac94b26ecefffd26c7038
Signed-off-by: Damjan Marion <damarion@cisco.com>
This commit is contained in:
Damjan Marion
2022-01-31 17:42:44 +01:00
committed by Florin Coras
parent bc0ef7aef5
commit 137d4ca67b

View File

@ -320,9 +320,17 @@ clib_memset_u64 (void *p, u64 val, uword count)
if (count == 0)
return;
#else
#if defined(CLIB_HAVE_VEC128)
u64x2 v = u64x2_splat (val);
#endif
while (count >= 4)
{
#if defined(CLIB_HAVE_VEC128)
u64x2_store_unaligned (v, ptr);
u64x2_store_unaligned (v, ptr + 2);
#else
ptr[0] = ptr[1] = ptr[2] = ptr[3] = val;
#endif
ptr += 4;
count -= 4;
}