From 3752e73919f8737f28f45e833fb569782d089c01 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Tue, 12 Mar 2024 20:44:01 +0100 Subject: [PATCH] handle incx < 0 --- kernel/riscv64/nrm2_rvv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/riscv64/nrm2_rvv.c b/kernel/riscv64/nrm2_rvv.c index 3eb423849..a0b201ec2 100644 --- a/kernel/riscv64/nrm2_rvv.c +++ b/kernel/riscv64/nrm2_rvv.c @@ -101,7 +101,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x) { BLASLONG i=0; - if (n <= 0 || inc_x <= 0) return(0.0); + if (n <= 0 || inc_x == 0) return(0.0); if(n == 1) return (ABS(x[0])); unsigned int gvl = 0; @@ -190,7 +190,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x) //finish any tail using scalar ops i*=gvl*inc_x; n*=inc_x; - while(i < n){ + while(abs(i) < abs(n)){ if ( x[i] != 0.0 ){ FLOAT absxi = ABS( x[i] ); if ( scale < absxi ){