From d6bb8dcfd1139037ec7538a64b9e143a05216740 Mon Sep 17 00:00:00 2001 From: Chip Kerchner Date: Sun, 6 Oct 2024 14:13:43 -0500 Subject: [PATCH] Common code. --- kernel/power/sbgemv_common.c | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/kernel/power/sbgemv_common.c b/kernel/power/sbgemv_common.c index 8ad7f92e7..830481fef 100644 --- a/kernel/power/sbgemv_common.c +++ b/kernel/power/sbgemv_common.c @@ -122,10 +122,7 @@ FORCEINLINE void copy_x(BLASLONG n, IFLOAT *src, IFLOAT *dest, BLASLONG inc_src) FORCEINLINE void copy_y_beta(BLASLONG n, FLOAT *src, FLOAT *dest, BLASLONG inc_src, FLOAT beta) { if (beta == (FLOAT)0) { - for (BLASLONG i = 0; i < n; i++) { - *dest++ = (FLOAT)0; - src += inc_src; - } + memset(dest, 0, n * sizeof(FLOAT)); } else if (beta == (FLOAT)1) { for (BLASLONG i = 0; i < n; i++) { *dest++ = *src; @@ -139,13 +136,18 @@ FORCEINLINE void copy_y_beta(BLASLONG n, FLOAT *src, FLOAT *dest, BLASLONG inc_s } } +FORCEINLINE void move_y(BLASLONG n, FLOAT *src, FLOAT *dest, BLASLONG inc_dest) +{ + for (BLASLONG i = 0; i < n; i++) { + *dest = *src++; + dest += inc_dest; + } +} + FORCEINLINE void copy_y(BLASLONG n, FLOAT *src, FLOAT *dest, BLASLONG inc_src, FLOAT beta) { if (beta == (FLOAT)0) { - for (BLASLONG i = 0; i < n; i++) { - *dest = *src++; - dest += inc_src; - } + move_y(n, src, dest, inc_src); } else if (beta == (FLOAT)1) { for (BLASLONG i = 0; i < n; i++) { *dest += *src++; @@ -159,14 +161,6 @@ FORCEINLINE void copy_y(BLASLONG n, FLOAT *src, FLOAT *dest, BLASLONG inc_src, F } } -FORCEINLINE void move_y(BLASLONG n, FLOAT *src, FLOAT *dest, BLASLONG inc_dest) -{ - for (BLASLONG i = 0; i < n; i++) { - *dest = *src++; - dest += inc_dest; - } -} - static void BF16GEMV_N_beta(BLASLONG n, FLOAT *output_vector, FLOAT *input_vector, FLOAT beta) { if (beta == (FLOAT)0) {