diff --git a/kernel/riscv64/scal.c b/kernel/riscv64/scal.c index bebbed67e..bd53fcff9 100644 --- a/kernel/riscv64/scal.c +++ b/kernel/riscv64/scal.c @@ -43,7 +43,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS if ( (n <= 0) || (inc_x <= 0)) return(0); - if (dummy2 == 0) { + if (dummy2 == 1) { while(j < n) { diff --git a/kernel/x86/scal.S b/kernel/x86/scal.S index 7e12a52ab..6620d3169 100644 --- a/kernel/x86/scal.S +++ b/kernel/x86/scal.S @@ -65,7 +65,7 @@ #else movl 32(%esp),%edi movl 36(%esp),%esi - movl 54(%esp),%ecx + movl 52(%esp),%ecx #endif ftst diff --git a/utest/test_gemv.c b/utest/test_gemv.c index c85ef3f38..dab6d2f11 100644 --- a/utest/test_gemv.c +++ b/utest/test_gemv.c @@ -12,47 +12,49 @@ CTEST(sgemv, 0_nan_inf) { + int i; blasint N = 17; blasint incX = 1; blasint incY = 1; float alpha = 0.0; float beta = 0.0; char trans = 'N'; - float A[N * N]; - float X[N]; - float Y[N]; + float A[17 * 17]; + float X[17]; + float Y[17]; memset(A, 0, sizeof(A)); memset(X, 0, sizeof(X)); - for (int i = 0; i < (N - 1); i += 2) + for (i = 0; i < (N - 1); i += 2) { Y[i] = NAN; Y[i + 1] = INFINITY; } Y[N - 1] = NAN; BLASFUNC(sgemv)(&trans, &N, &N, &alpha, A, &N, X, &incX, &beta, Y, &incY); - for (int i = 0; i < N; i ++) + for (i = 0; i < N; i ++) ASSERT_TRUE(Y[i] == 0.0); } CTEST(sgemv, 0_nan_inf_incy_2) { - blasint N = 17; + int i; + blasint N = 17; blasint Ny = 33; blasint incX = 1; blasint incY = 2; float alpha = 0.0; float beta = 0.0; char trans = 'N'; - float A[N * N]; - float X[N]; - float Y[Ny]; + float A[17 * 17]; + float X[17]; + float Y[33]; float *ay = Y; memset(A, 0, sizeof(A)); memset(X, 0, sizeof(X)); memset(Y, 0, sizeof(Y)); - for (int i = 0; i < (N - 1); i += 2) + for (i = 0; i < (N - 1); i += 2) { ay[0] = NAN; ay += 2; @@ -61,7 +63,7 @@ CTEST(sgemv, 0_nan_inf_incy_2) } Y[Ny - 1] = NAN; BLASFUNC(sgemv)(&trans, &N, &N, &alpha, A, &N, X, &incX, &beta, Y, &incY); - for (int i = 0; i < Ny; i ++) + for (i = 0; i < Ny; i ++) ASSERT_TRUE(Y[i] == 0.0); } @@ -70,47 +72,49 @@ CTEST(sgemv, 0_nan_inf_incy_2) #ifdef BUILD_DOUBLE CTEST(dgemv, 0_nan_inf) { + int i; blasint N = 17; blasint incX = 1; blasint incY = 1; double alpha = 0.0; double beta = 0.0; char trans = 'N'; - double A[N * N]; - double X[N]; - double Y[N]; + double A[17 * 17]; + double X[17]; + double Y[17]; memset(A, 0, sizeof(A)); memset(X, 0, sizeof(X)); - for (int i = 0; i < (N - 1); i += 2) + for (i = 0; i < (N - 1); i += 2) { Y[i] = NAN; Y[i + 1] = INFINITY; } Y[N - 1] = NAN; BLASFUNC(dgemv)(&trans, &N, &N, &alpha, A, &N, X, &incX, &beta, Y, &incY); - for (int i = 0; i < N; i ++) + for (i = 0; i < N; i ++) ASSERT_TRUE(Y[i] == 0.0); } CTEST(dgemv, 0_nan_inf_incy_2) { - blasint N = 17; + int i; + blasint N = 17; blasint Ny = 33; blasint incX = 1; blasint incY = 2; double alpha = 0.0; double beta = 0.0; char trans = 'N'; - double A[N * N]; - double X[N]; - double Y[Ny]; + double A[17 * 17]; + double X[17]; + double Y[33]; double *ay = Y; memset(A, 0, sizeof(A)); memset(X, 0, sizeof(X)); memset(Y, 0, sizeof(Y)); - for (int i = 0; i < (N - 1); i += 2) + for (i = 0; i < (N - 1); i += 2) { ay[0] = NAN; ay += 2; @@ -119,7 +123,7 @@ CTEST(dgemv, 0_nan_inf_incy_2) } Y[Ny - 1] = NAN; BLASFUNC(dgemv)(&trans, &N, &N, &alpha, A, &N, X, &incX, &beta, Y, &incY); - for (int i = 0; i < Ny; i ++) + for (i = 0; i < Ny; i ++) ASSERT_TRUE(Y[i] == 0.0); }