@@ -25,14 +25,14 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
2525 < div class ='fl pad1y space-right2 '>
2626 < span class ="strong "> 100% </ span >
2727 < span class ="quiet "> Statements</ span >
28- < span class ='fraction '> 108/108 </ span >
28+ < span class ='fraction '> 123/123 </ span >
2929 </ div >
3030
3131
3232 < div class ='fl pad1y space-right2 '>
3333 < span class ="strong "> 100% </ span >
3434 < span class ="quiet "> Branches</ span >
35- < span class ='fraction '> 5/5 </ span >
35+ < span class ='fraction '> 10/10 </ span >
3636 </ div >
3737
3838
@@ -46,7 +46,7 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
4646 < div class ='fl pad1y space-right2 '>
4747 < span class ="strong "> 100% </ span >
4848 < span class ="quiet "> Lines</ span >
49- < span class ='fraction '> 108/108 </ span >
49+ < span class ='fraction '> 123/123 </ span >
5050 </ div >
5151
5252
@@ -171,7 +171,22 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
171171< a name ='L106 '> </ a > < a href ='#L106 '> 106</ a >
172172< a name ='L107 '> </ a > < a href ='#L107 '> 107</ a >
173173< a name ='L108 '> </ a > < a href ='#L108 '> 108</ a >
174- < a name ='L109 '> </ a > < a href ='#L109 '> 109</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 3x</ span >
174+ < a name ='L109 '> </ a > < a href ='#L109 '> 109</ a >
175+ < a name ='L110 '> </ a > < a href ='#L110 '> 110</ a >
176+ < a name ='L111 '> </ a > < a href ='#L111 '> 111</ a >
177+ < a name ='L112 '> </ a > < a href ='#L112 '> 112</ a >
178+ < a name ='L113 '> </ a > < a href ='#L113 '> 113</ a >
179+ < a name ='L114 '> </ a > < a href ='#L114 '> 114</ a >
180+ < a name ='L115 '> </ a > < a href ='#L115 '> 115</ a >
181+ < a name ='L116 '> </ a > < a href ='#L116 '> 116</ a >
182+ < a name ='L117 '> </ a > < a href ='#L117 '> 117</ a >
183+ < a name ='L118 '> </ a > < a href ='#L118 '> 118</ a >
184+ < a name ='L119 '> </ a > < a href ='#L119 '> 119</ a >
185+ < a name ='L120 '> </ a > < a href ='#L120 '> 120</ a >
186+ < a name ='L121 '> </ a > < a href ='#L121 '> 121</ a >
187+ < a name ='L122 '> </ a > < a href ='#L122 '> 122</ a >
188+ < a name ='L123 '> </ a > < a href ='#L123 '> 123</ a >
189+ < a name ='L124 '> </ a > < a href ='#L124 '> 124</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 3x</ span >
175190< span class ="cline-any cline-yes "> 3x</ span >
176191< span class ="cline-any cline-yes "> 3x</ span >
177192< span class ="cline-any cline-yes "> 3x</ span >
@@ -234,46 +249,61 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
234249< span class ="cline-any cline-yes "> 3x</ span >
235250< span class ="cline-any cline-yes "> 3x</ span >
236251< span class ="cline-any cline-yes "> 3x</ span >
237- < span class ="cline-any cline-yes "> 22x</ span >
238- < span class ="cline-any cline-yes "> 22x</ span >
239- < span class ="cline-any cline-yes "> 22x</ span >
240- < span class ="cline-any cline-yes "> 22x</ span >
241- < span class ="cline-any cline-yes "> 22x</ span >
242- < span class ="cline-any cline-yes "> 22x</ span >
243- < span class ="cline-any cline-yes "> 22x</ span >
244- < span class ="cline-any cline-yes "> 22x</ span >
245- < span class ="cline-any cline-yes "> 22x</ span >
246- < span class ="cline-any cline-yes "> 22x</ span >
247- < span class ="cline-any cline-yes "> 22x</ span >
248- < span class ="cline-any cline-yes "> 22x</ span >
249- < span class ="cline-any cline-yes "> 22x</ span >
250- < span class ="cline-any cline-yes "> 22x</ span >
251- < span class ="cline-any cline-yes "> 22x</ span >
252- < span class ="cline-any cline-yes "> 22x</ span >
253- < span class ="cline-any cline-yes "> 22x</ span >
254- < span class ="cline-any cline-yes "> 22x</ span >
255- < span class ="cline-any cline-yes "> 22x</ span >
256- < span class ="cline-any cline-yes "> 22x</ span >
257- < span class ="cline-any cline-yes "> 22x</ span >
258- < span class ="cline-any cline-yes "> 22x</ span >
259- < span class ="cline-any cline-yes "> 22x</ span >
260- < span class ="cline-any cline-yes "> 22x</ span >
261- < span class ="cline-any cline-yes "> 22x</ span >
262- < span class ="cline-any cline-yes "> 22x</ span >
263- < span class ="cline-any cline-yes "> 2076x</ span >
264- < span class ="cline-any cline-yes "> 2076x</ span >
265- < span class ="cline-any cline-yes "> 2076x</ span >
252+ < span class ="cline-any cline-yes "> 23x</ span >
253+ < span class ="cline-any cline-yes "> 23x</ span >
254+ < span class ="cline-any cline-yes "> 23x</ span >
255+ < span class ="cline-any cline-yes "> 23x</ span >
256+ < span class ="cline-any cline-yes "> 23x</ span >
257+ < span class ="cline-any cline-yes "> 23x</ span >
258+ < span class ="cline-any cline-yes "> 23x</ span >
259+ < span class ="cline-any cline-yes "> 23x</ span >
260+ < span class ="cline-any cline-yes "> 23x</ span >
261+ < span class ="cline-any cline-yes "> 23x</ span >
262+ < span class ="cline-any cline-yes "> 23x</ span >
263+ < span class ="cline-any cline-yes "> 23x</ span >
264+ < span class ="cline-any cline-yes "> 23x</ span >
265+ < span class ="cline-any cline-yes "> 23x</ span >
266+ < span class ="cline-any cline-yes "> 23x</ span >
267+ < span class ="cline-any cline-yes "> 23x</ span >
268+ < span class ="cline-any cline-yes "> 23x</ span >
269+ < span class ="cline-any cline-yes "> 23x</ span >
270+ < span class ="cline-any cline-yes "> 23x</ span >
271+ < span class ="cline-any cline-yes "> 23x</ span >
272+ < span class ="cline-any cline-yes "> 23x</ span >
273+ < span class ="cline-any cline-yes "> 23x</ span >
274+ < span class ="cline-any cline-yes "> 23x</ span >
275+ < span class ="cline-any cline-yes "> 23x</ span >
276+ < span class ="cline-any cline-yes "> 23x</ span >
277+ < span class ="cline-any cline-yes "> 23x</ span >
278+ < span class ="cline-any cline-yes "> 23x</ span >
279+ < span class ="cline-any cline-yes "> 21x</ span >
280+ < span class ="cline-any cline-yes "> 25x</ span >
281+ < span class ="cline-any cline-yes "> 25x</ span >
282+ < span class ="cline-any cline-yes "> 21x</ span >
283+ < span class ="cline-any cline-yes "> 21x</ span >
284+ < span class ="cline-any cline-yes "> 4x</ span >
285+ < span class ="cline-any cline-yes "> 4x</ span >
286+ < span class ="cline-any cline-yes "> 4x</ span >
287+ < span class ="cline-any cline-yes "> 4x</ span >
288+ < span class ="cline-any cline-yes "> 23x</ span >
289+ < span class ="cline-any cline-yes "> 2x</ span >
290+ < span class ="cline-any cline-yes "> 2x</ span >
291+ < span class ="cline-any cline-yes "> 23x</ span >
292+ < span class ="cline-any cline-yes "> 23x</ span >
293+ < span class ="cline-any cline-yes "> 2077x</ span >
294+ < span class ="cline-any cline-yes "> 2077x</ span >
295+ < span class ="cline-any cline-yes "> 2077x</ span >
266296< span class ="cline-any cline-yes "> 2031x</ span >
267- < span class ="cline-any cline-yes "> 2076x </ span >
268- < span class ="cline-any cline-yes "> 45x </ span >
269- < span class ="cline-any cline-yes "> 45x </ span >
270- < span class ="cline-any cline-yes "> 2076x </ span >
271- < span class ="cline-any cline-yes "> 2076x </ span >
272- < span class ="cline-any cline-yes "> 2076x </ span >
273- < span class ="cline-any cline-yes "> 2076x </ span >
274- < span class ="cline-any cline-yes "> 2076x </ span >
275- < span class ="cline-any cline-yes "> 22x </ span >
276- < span class ="cline-any cline-yes "> 22x </ span >
297+ < span class ="cline-any cline-yes "> 2077x </ span >
298+ < span class ="cline-any cline-yes "> 46x </ span >
299+ < span class ="cline-any cline-yes "> 46x </ span >
300+ < span class ="cline-any cline-yes "> 2077x </ span >
301+ < span class ="cline-any cline-yes "> 2077x </ span >
302+ < span class ="cline-any cline-yes "> 2077x </ span >
303+ < span class ="cline-any cline-yes "> 2077x </ span >
304+ < span class ="cline-any cline-yes "> 2077x </ span >
305+ < span class ="cline-any cline-yes "> 23x </ span >
306+ < span class ="cline-any cline-yes "> 23x </ span >
277307< span class ="cline-any cline-yes "> 3x</ span >
278308< span class ="cline-any cline-yes "> 3x</ span >
279309< span class ="cline-any cline-yes "> 3x</ span >
@@ -366,8 +396,23 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
366396 ix = offsetX;
367397 iy = offsetY;
368398 s = sum;
399+
400+ // In order to preserve the sign of zero which can be lost during compensated summation below, find the first non-zero element...
401+ if ( s === 0.0 ) {
402+ for ( i = 0; i < N; i++ ) {
403+ v = xget( xbuf, ix );
404+ if ( v !== 0.0 ) {
405+ break;
406+ }
407+ yset( ybuf, iy, s + v );
408+ ix += strideX;
409+ iy += strideY;
410+ }
411+ } else {
412+ i = 0;
413+ }
369414 c = 0.0;
370- for ( i = 0 ; i < N; i++ ) {
415+ for ( ; i < N; i++ ) {
371416 v = xget( xbuf, ix );
372417 t = s + v;
373418 if ( abs( s ) >= abs( v ) ) {
@@ -394,7 +439,7 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
394439 < div class ='footer quiet pad2 space-top1 center small '>
395440 Code coverage generated by
396441 < a href ="https://istanbul.js.org/ " target ="_blank " rel ="noopener noreferrer "> istanbul</ a >
397- at 2025-02-05T11:18:17.880Z
442+ at 2025-04-25T05:31:12.282Z
398443 </ div >
399444 < script src ="../../../../../prettify.js "> </ script >
400445 < script >
0 commit comments