2020
2121// MODULES //
2222
23- var float64ToFloat32 = require ( '@stdlib/number/float64/base/to-float32' ) ;
23+ var f32 = require ( '@stdlib/number/float64/base/to-float32' ) ;
2424var isnanf = require ( '@stdlib/math/base/assert/is-nanf' ) ;
2525var floor = require ( '@stdlib/math/base/special/floor' ) ;
2626
@@ -88,7 +88,7 @@ function snansumpw( N, x, strideX, offsetX ) {
8888 s = 0.0 ;
8989 for ( i = 0 ; i < N ; i ++ ) {
9090 if ( isnanf ( x [ ix ] ) === false ) {
91- s = float64ToFloat32 ( s + x [ ix ] ) ;
91+ s = f32 ( s + x [ ix ] ) ;
9292 }
9393 ix += strideX ;
9494 }
@@ -115,30 +115,30 @@ function snansumpw( N, x, strideX, offsetX ) {
115115
116116 M = N % 8 ;
117117 for ( i = 8 ; i < N - M ; i += 8 ) {
118- s0 = ( isnanf ( x [ ix ] ) ) ? s0 : float64ToFloat32 ( s0 + x [ ix ] ) ;
118+ s0 = ( isnanf ( x [ ix ] ) ) ? s0 : f32 ( s0 + x [ ix ] ) ;
119119 ix += strideX ;
120- s1 = ( isnanf ( x [ ix ] ) ) ? s1 : float64ToFloat32 ( s1 + x [ ix ] ) ;
120+ s1 = ( isnanf ( x [ ix ] ) ) ? s1 : f32 ( s1 + x [ ix ] ) ;
121121 ix += strideX ;
122- s2 = ( isnanf ( x [ ix ] ) ) ? s2 : float64ToFloat32 ( s2 + x [ ix ] ) ;
122+ s2 = ( isnanf ( x [ ix ] ) ) ? s2 : f32 ( s2 + x [ ix ] ) ;
123123 ix += strideX ;
124- s3 = ( isnanf ( x [ ix ] ) ) ? s3 : float64ToFloat32 ( s3 + x [ ix ] ) ;
124+ s3 = ( isnanf ( x [ ix ] ) ) ? s3 : f32 ( s3 + x [ ix ] ) ;
125125 ix += strideX ;
126- s4 = ( isnanf ( x [ ix ] ) ) ? s4 : float64ToFloat32 ( s4 + x [ ix ] ) ;
126+ s4 = ( isnanf ( x [ ix ] ) ) ? s4 : f32 ( s4 + x [ ix ] ) ;
127127 ix += strideX ;
128- s5 = ( isnanf ( x [ ix ] ) ) ? s5 : float64ToFloat32 ( s5 + x [ ix ] ) ;
128+ s5 = ( isnanf ( x [ ix ] ) ) ? s5 : f32 ( s5 + x [ ix ] ) ;
129129 ix += strideX ;
130- s6 = ( isnanf ( x [ ix ] ) ) ? s6 : float64ToFloat32 ( s6 + x [ ix ] ) ;
130+ s6 = ( isnanf ( x [ ix ] ) ) ? s6 : f32 ( s6 + x [ ix ] ) ;
131131 ix += strideX ;
132- s7 = ( isnanf ( x [ ix ] ) ) ? s7 : float64ToFloat32 ( s7 + x [ ix ] ) ;
132+ s7 = ( isnanf ( x [ ix ] ) ) ? s7 : f32 ( s7 + x [ ix ] ) ;
133133 ix += strideX ;
134134 }
135135 // Pairwise sum the accumulators:
136- s = float64ToFloat32 ( float64ToFloat32 ( float64ToFloat32 ( s0 + s1 ) + float64ToFloat32 ( s2 + s3 ) ) + float64ToFloat32 ( float64ToFloat32 ( s4 + s5 ) + float64ToFloat32 ( s6 + s7 ) ) ) ; // eslint-disable-line max-len
136+ s = f32 ( f32 ( f32 ( s0 + s1 ) + f32 ( s2 + s3 ) ) + f32 ( f32 ( s4 + s5 ) + f32 ( s6 + s7 ) ) ) ; // eslint-disable-line max-len
137137
138138 // Clean-up loop...
139139 for ( i ; i < N ; i ++ ) {
140140 if ( isnanf ( x [ ix ] ) === false ) {
141- s = float64ToFloat32 ( s + x [ ix ] ) ;
141+ s = f32 ( s + x [ ix ] ) ;
142142 }
143143 ix += strideX ;
144144 }
@@ -147,7 +147,7 @@ function snansumpw( N, x, strideX, offsetX ) {
147147 // Recurse by dividing by two, but avoiding non-multiples of unroll factor...
148148 n = floor ( N / 2 ) ;
149149 n -= n % 8 ;
150- return float64ToFloat32 ( snansumpw ( n , x , strideX , ix ) + snansumpw ( N - n , x , strideX , ix + ( n * strideX ) ) ) ; // eslint-disable-line max-len
150+ return f32 ( snansumpw ( n , x , strideX , ix ) + snansumpw ( N - n , x , strideX , ix + ( n * strideX ) ) ) ; // eslint-disable-line max-len
151151}
152152
153153
0 commit comments