Skip to content

Commit 95641f7

Browse files
committed
fix: update implementation to preserve signed zeros
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: na - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: passed - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: na - task: lint_typescript_tests status: na - task: lint_license_headers status: passed ---
1 parent e20b7f5 commit 95641f7

File tree

2 files changed

+5
-4
lines changed
  • lib/node_modules/@stdlib/blas/ext/base/dsumpw

2 files changed

+5
-4
lines changed

lib/node_modules/@stdlib/blas/ext/base/dsumpw/include/stdlib/blas/ext/base/dsumpw.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ extern "C" {
3131
/**
3232
* Computes the sum of double-precision floating-point strided array elements using pairwise summation.
3333
*/
34-
double API_SUFFIX(stdlib_strided_dsumpw)( const CBLAS_INT N, const double *X, const CBLAS_INT stride );
34+
double API_SUFFIX(stdlib_strided_dsumpw)( const CBLAS_INT N, const double *X, const CBLAS_INT strideX );
3535

3636
/**
3737
* Computes the sum of double-precision floating-point strided array elements using pairwise summation and alternative indexing semantics.

lib/node_modules/@stdlib/blas/ext/base/dsumpw/src/main.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,9 @@ double API_SUFFIX(stdlib_strided_dsumpw_ndarray)( const CBLAS_INT N, const doubl
8282
}
8383
if ( N < 8 ) {
8484
// Use simple summation...
85-
sum = 0.0;
86-
for ( i = 0; i < N; i++ ) {
85+
sum = X[ ix ];
86+
ix += strideX;
87+
for ( i = 1; i < N; i++ ) {
8788
sum += X[ ix ];
8889
ix += strideX;
8990
}
@@ -118,7 +119,7 @@ double API_SUFFIX(stdlib_strided_dsumpw_ndarray)( const CBLAS_INT N, const doubl
118119
sum = ( (s0+s1) + (s2+s3) ) + ( (s4+s5) + (s6+s7) );
119120

120121
// Clean-up loop...
121-
for (; i < N; i++ ) {
122+
for ( ; i < N; i++ ) {
122123
sum += X[ ix ];
123124
ix += strideX;
124125
}

0 commit comments

Comments
 (0)