diff options
author | Lijian.Zhang <Lijian.Zhang@arm.com> | 2019-04-04 15:26:26 +0800 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2019-05-01 07:44:55 +0000 |
commit | 37c83785b692145b95fe4678f7d599527157217c (patch) | |
tree | 4a544b46e8931846672f99ec9a5a744554760966 /src/vppinfra/string.h | |
parent | 1cff643c6549c6af026213267bed4a8eb25af55f (diff) |
Enable NEON instructions in memcpy_le
Neon version of memcpy_le gives better performance compared with memmove on aarch64
Change-Id: I44b487bb0795a6e70dd1e55bdde4a077773ec859
Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com>
Reviewed-by: Sirshak Das <sirdas@arm.com>
Diffstat (limited to 'src/vppinfra/string.h')
-rw-r--r-- | src/vppinfra/string.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vppinfra/string.h b/src/vppinfra/string.h index 49848e92f39..d64df8e5602 100644 --- a/src/vppinfra/string.h +++ b/src/vppinfra/string.h @@ -239,7 +239,7 @@ clib_memcpy_le (u8 * dst, u8 * src, u8 len, u8 max_len) d1 = u8x32_blend (d1, s1, u8x32_is_greater (lv, mask)); u8x32_store_unaligned (d1, dst + 32); -#elif defined (CLIB_HAVE_VEC128) && !defined (__aarch64__) +#elif defined (CLIB_HAVE_VEC128) u8x16 s0, s1, s2, s3, d0, d1, d2, d3; u8x16 mask = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; u8x16 lv = u8x16_splat (len); |