From 01e1c61e9fcf4a0b0164a7fe5395a209a50f6905 Mon Sep 17 00:00:00 2001 From: Berke Güzel Date: Tue, 13 Oct 2026 19:22:05 +0300 Subject: Optimize hot loops with direct access, LUTs, and closed-form formulas --- src/kernels.h | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/kernels.h') diff --git a/src/kernels.h b/src/kernels.h index 45d25b7..57066c0 100644 --- a/src/kernels.h +++ b/src/kernels.h @@ -208,9 +208,14 @@ static inline TERM_ALWAYS_INLINE void bytes_copy_small(uint8_t *restrict dst, memcpy(&b, src + n - 4, 4); memcpy(dst, &a, 4); memcpy(dst + n - 4, &b, 4); - } else { - for (int k = 0; k < n; k++) - dst[k] = (uint8_t)src[k]; + } else if (n >= 2) { + uint16_t a, b; + memcpy(&a, src, 2); + memcpy(&b, src + n - 2, 2); + memcpy(dst, &a, 2); + memcpy(dst + n - 2, &b, 2); + } else if (n == 1) { + dst[0] = (uint8_t)src[0]; } } -- cgit v1.2.3