aboutsummaryrefslogtreecommitdiffstats
path: root/src/vppinfra/memcpy_x86_64.h
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2023-04-17 09:38:11 +0000
committerAndrew Yourtchenko <ayourtch@gmail.com>2023-04-17 10:54:34 +0000
commit98f7f0a873514604e2cf0433ea06f1705b023b60 (patch)
tree5c364ca0ae6353b5e048290bcfca601f72811c9c /src/vppinfra/memcpy_x86_64.h
parentb42d27ad4825ae44ff81b83b6170523d8739cb43 (diff)
build: add scalar (no-simd) march variant
for testing purposes, disabled by default Type: improvement Signed-off-by: Damjan Marion <damarion@cisco.com> Change-Id: Id616e2b3b21ae0f0b44e2b55ecefd501afacc7f2
Diffstat (limited to 'src/vppinfra/memcpy_x86_64.h')
-rw-r--r--src/vppinfra/memcpy_x86_64.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/vppinfra/memcpy_x86_64.h b/src/vppinfra/memcpy_x86_64.h
index e206c69c997..39258f19748 100644
--- a/src/vppinfra/memcpy_x86_64.h
+++ b/src/vppinfra/memcpy_x86_64.h
@@ -38,13 +38,16 @@ clib_memcpy8 (void *d, void *s)
*(u64u *) d = *(u64u *) s;
}
-#ifdef CLIB_HAVE_VEC128
static_always_inline void
clib_memcpy16 (void *d, void *s)
{
+#ifdef CLIB_HAVE_VEC128
*(u8x16u *) d = *(u8x16u *) s;
-}
+#else
+ clib_memcpy8 (d, s);
+ clib_memcpy8 (d + 8, s + 8);
#endif
+}
#ifdef CLIB_HAVE_VEC256
static_always_inline void