From a882f3572150ca6e8cf75707123ff6a50237e493 Mon Sep 17 00:00:00 2001 From: Vladimir Chalupecky Date: Thu, 23 Mar 2017 12:54:27 +0100 Subject: [PATCH] native: fix indexing bugs in Dlasq6 --- native/dlasq6.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/native/dlasq6.go b/native/dlasq6.go index 72d1000..97e128b 100644 --- a/native/dlasq6.go +++ b/native/dlasq6.go @@ -73,7 +73,7 @@ func (impl Implementation) Dlasq6(i0, n0 int, z []float64, pp int, dmin, dmin1, // Unroll last two steps. dnm2 = d dmin2 = dmin - j4 = 4*(n0-2) - pp - 1 + j4 = 4*(n0-1) - pp - 1 j4p2 := j4 + 2*pp - 1 z[j4-2] = dnm2 + z[j4p2] if z[j4-2] == 0 { @@ -87,7 +87,7 @@ func (impl Implementation) Dlasq6(i0, n0 int, z []float64, pp int, dmin, dmin1, dnm1 = dnm2 * tmp } else { z[j4] = z[j4p2+2] * (z[j4p2] / z[j4-2]) - dnm1 = z[j4p2] * (dnm2 / z[j4-2]) + dnm1 = z[j4p2+2] * (dnm2 / z[j4-2]) } dmin = math.Min(dmin, dnm1) dmin1 = dmin @@ -105,7 +105,7 @@ func (impl Implementation) Dlasq6(i0, n0 int, z []float64, pp int, dmin, dmin1, dn = dnm1 * tmp } else { z[j4] = z[j4p2+2] * (z[j4p2] / z[j4-2]) - dn = z[j4p2] * (dnm2 / z[j4-2]) + dn = z[j4p2+2] * (dnm1 / z[j4-2]) } dmin = math.Min(dmin, dn) z[j4+2] = dn