authorgravatar for thatlemon@gmail.comLemonBoy <thatlemon@gmail.com> 2020-12-09 16:48:41+01:00
committergravatar for thatlemon@gmail.comLemonBoy <thatlemon@gmail.com> 2020-12-09 16:48:41+01:00
log6f220bb7caefbd83493b769addb0a83f8252e132
tree1446e4c060f573625092845695f167084beb038f
parentafd491c07e7b69b0bdeaa2304c71e87b66a8a64a

std: explicitly cast indices to usize

This is needed for platforms where usize=u16, eg. MSP430.

1 files changed, 3 insertions(+), 3 deletions(-)

lib/std/math/exp2.zig+3-3
...@@ -95,7 +95,7 @@ fn exp2_32(x: f32) f32 {...@@ -95,7 +95,7 @@ fn exp2_32(x: f32) f32 {
95 uf -= redux;95 uf -= redux;
9696
97 const z: f64 = x - uf;97 const z: f64 = x - uf;
98 var r: f64 = exp2ft[i_0];98 var r: f64 = exp2ft[@intCast(usize, i_0)];
99 const t: f64 = r * z;99 const t: f64 = r * z;
100 r = r + t * (P1 + z * P2) + t * (z * z) * (P3 + z * P4);100 r = r + t * (P1 + z * P2) + t * (z * z) * (P3 + z * P4);
101 return @floatCast(f32, r * uk);101 return @floatCast(f32, r * uk);
...@@ -418,8 +418,8 @@ fn exp2_64(x: f64) f64 {...@@ -418,8 +418,8 @@ fn exp2_64(x: f64) f64 {
418418
419 // r = exp2(y) = exp2t[i_0] * p(z - eps[i])419 // r = exp2(y) = exp2t[i_0] * p(z - eps[i])
420 var z = x - uf;420 var z = x - uf;
421 const t = exp2dt[2 * i_0];421 const t = exp2dt[@intCast(usize, 2 * i_0)];
422 z -= exp2dt[2 * i_0 + 1];422 z -= exp2dt[@intCast(usize, 2 * i_0 + 1)];
423 const r = t + t * z * (P1 + z * (P2 + z * (P3 + z * (P4 + z * P5))));423 const r = t + t * z * (P1 + z * (P2 + z * (P3 + z * (P4 + z * P5))));
424424
425 return math.scalbn(r, ik);425 return math.scalbn(r, ik);