Skip to content

Commit 67273e4

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: passed - 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: na - 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 d7715a6 commit 67273e4

File tree

1 file changed

+8
-8
lines changed
  • lib/node_modules/@stdlib/blas/ext/base/dnannsumpw/lib

1 file changed

+8
-8
lines changed

lib/node_modules/@stdlib/blas/ext/base/dnannsumpw/lib/sumpw.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -147,14 +147,14 @@ function sumpw( N, x, strideX, offsetX, out, strideOut, offsetOut ) {
147147
}
148148
if ( (N-i) <= BLOCKSIZE ) {
149149
// Sum a block with 8 accumulators (by loop unrolling, we lower the effective blocksize to 16)...
150-
s0 = 0.0;
151-
s1 = 0.0;
152-
s2 = 0.0;
153-
s3 = 0.0;
154-
s4 = 0.0;
155-
s5 = 0.0;
156-
s6 = 0.0;
157-
s7 = 0.0;
150+
s0 = -0.0; // note: negative zero in order to ensure sign preservation if all elements are negative zero
151+
s1 = -0.0;
152+
s2 = -0.0;
153+
s3 = -0.0;
154+
s4 = -0.0;
155+
s5 = -0.0;
156+
s6 = -0.0;
157+
s7 = -0.0;
158158

159159
M = (N-i) % 8;
160160
for ( ; i < N-M; i += 8 ) {

0 commit comments

Comments
 (0)