diff --git a/blas/gonum/errors.go b/blas/gonum/errors.go index 28901c3d0..e98575d0f 100644 --- a/blas/gonum/errors.go +++ b/blas/gonum/errors.go @@ -20,11 +20,16 @@ const ( badTranspose = "blas: illegal transpose" badDiag = "blas: illegal diagonal" badSide = "blas: illegal side" + badFlag = "blas: illegal rotm flag" badLdA = "blas: bad leading dimension of A" badLdB = "blas: bad leading dimension of B" badLdC = "blas: bad leading dimension of C" - badX = "blas: bad length of x" - badY = "blas: bad length of y" + shortX = "blas: insufficient length of x" + shortY = "blas: insufficient length of y" + shortAP = "blas: insufficient length of ap" + shortA = "blas: insufficient length of a" + shortB = "blas: insufficient length of b" + shortC = "blas: insufficient length of c" ) diff --git a/blas/gonum/gemv.go b/blas/gonum/gemv.go index acd8f323b..3e890621c 100644 --- a/blas/gonum/gemv.go +++ b/blas/gonum/gemv.go @@ -44,10 +44,10 @@ func (Implementation) Dgemv(tA blas.Transpose, m, n int, alpha float64, a []floa lenY = m } if (incX > 0 && (lenX-1)*incX >= len(x)) || (incX < 0 && (1-lenX)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (lenY-1)*incY >= len(y)) || (incY < 0 && (1-lenY)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(m-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -111,10 +111,10 @@ func (Implementation) Sgemv(tA blas.Transpose, m, n int, alpha float32, a []floa lenY = m } if (incX > 0 && (lenX-1)*incX >= len(x)) || (incX < 0 && (1-lenX)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (lenY-1)*incY >= len(y)) || (incY < 0 && (1-lenY)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(m-1)+n > len(a) || lda < max(1, n) { panic(badLdA) diff --git a/blas/gonum/level1cmplx128.go b/blas/gonum/level1cmplx128.go index d437b8c8d..9aa154ee0 100644 --- a/blas/gonum/level1cmplx128.go +++ b/blas/gonum/level1cmplx128.go @@ -26,7 +26,7 @@ func (Implementation) Dzasum(n int, x []complex128, incX int) float64 { var sum float64 if incX == 1 { if len(x) < n { - panic(badX) + panic(shortX) } for _, v := range x[:n] { sum += dcabs1(v) @@ -34,7 +34,7 @@ func (Implementation) Dzasum(n int, x []complex128, incX int) float64 { return sum } if (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } for i := 0; i < n; i++ { v := x[i*incX] @@ -60,7 +60,7 @@ func (Implementation) Dznrm2(n int, x []complex128, incX int) float64 { panic(nLT0) } if (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } var ( scale float64 @@ -134,7 +134,7 @@ func (Implementation) Izamax(n int, x []complex128, incX int) int { panic(nLT0) } if len(x) <= (n-1)*incX { - panic(badX) + panic(shortX) } idx := 0 max := dcabs1(x[0]) @@ -176,10 +176,10 @@ func (Implementation) Zaxpy(n int, alpha complex128, x []complex128, incX int, y panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if alpha == 0 { return @@ -213,10 +213,10 @@ func (Implementation) Zcopy(n int, x []complex128, incX int, y []complex128, inc panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { copy(y[:n], x[:n]) @@ -254,10 +254,10 @@ func (Implementation) Zdotc(n int, x []complex128, incX int, y []complex128, inc } if incX == 1 && incY == 1 { if len(x) < n { - panic(badX) + panic(shortX) } if len(y) < n { - panic(badY) + panic(shortY) } return c128.DotcUnitary(x[:n], y[:n]) } @@ -269,10 +269,10 @@ func (Implementation) Zdotc(n int, x []complex128, incX int, y []complex128, inc iy = (-n + 1) * incY } if ix >= len(x) || (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if iy >= len(y) || (n-1)*incY >= len(y) { - panic(badY) + panic(shortY) } return c128.DotcInc(x, y, uintptr(n), uintptr(incX), uintptr(incY), uintptr(ix), uintptr(iy)) } @@ -295,10 +295,10 @@ func (Implementation) Zdotu(n int, x []complex128, incX int, y []complex128, inc } if incX == 1 && incY == 1 { if len(x) < n { - panic(badX) + panic(shortX) } if len(y) < n { - panic(badY) + panic(shortY) } return c128.DotuUnitary(x[:n], y[:n]) } @@ -310,10 +310,10 @@ func (Implementation) Zdotu(n int, x []complex128, incX int, y []complex128, inc iy = (-n + 1) * incY } if ix >= len(x) || (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if iy >= len(y) || (n-1)*incY >= len(y) { - panic(badY) + panic(shortY) } return c128.DotuInc(x, y, uintptr(n), uintptr(incX), uintptr(incY), uintptr(ix), uintptr(iy)) } @@ -328,7 +328,7 @@ func (Implementation) Zdscal(n int, alpha float64, x []complex128, incX int) { return } if (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 1 { if n == 0 { @@ -372,7 +372,7 @@ func (Implementation) Zscal(n int, alpha complex128, x []complex128, incX int) { return } if (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 1 { if n == 0 { @@ -415,10 +415,10 @@ func (Implementation) Zswap(n int, x []complex128, incX int, y []complex128, inc panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { x = x[:n] diff --git a/blas/gonum/level1double.go b/blas/gonum/level1double.go index 84a6f2b06..e3ec54b12 100644 --- a/blas/gonum/level1double.go +++ b/blas/gonum/level1double.go @@ -24,7 +24,7 @@ func (Implementation) Dnrm2(n int, x []float64, incX int) float64 { return 0 } if incX > 0 && (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 2 { if n == 1 { @@ -98,7 +98,7 @@ func (Implementation) Dasum(n int, x []float64, incX int) float64 { return 0 } if incX > 0 && (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if incX == 1 { x = x[:n] @@ -124,7 +124,7 @@ func (Implementation) Idamax(n int, x []float64, incX int) int { return -1 } if incX > 0 && (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 2 { if n == 1 { @@ -176,10 +176,10 @@ func (Implementation) Dswap(n int, x []float64, incX int, y []float64, incY int) panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { x = x[:n] @@ -218,10 +218,10 @@ func (Implementation) Dcopy(n int, x []float64, incX int, y []float64, incY int) panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { copy(y[:n], x[:n]) @@ -257,10 +257,10 @@ func (Implementation) Daxpy(n int, alpha float64, x []float64, incX int, y []flo panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if alpha == 0 { return @@ -422,7 +422,7 @@ func (Implementation) Drotmg(d1, d2, x1, y1 float64) (p blas.DrotmParams, rd1, r case blas.Rescaling: p.H = [4]float64{h11, h21, h12, h22} default: - panic("blas: unexpected blas.Flag") + panic(badFlag) } return p, d1, d2, x1 @@ -445,10 +445,10 @@ func (Implementation) Drot(n int, x []float64, incX int, y []float64, incY int, panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { x = x[:n] @@ -489,10 +489,10 @@ func (Implementation) Drotm(n int, x []float64, incX int, y []float64, incY int, panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if p.Flag == blas.Identity { @@ -591,7 +591,7 @@ func (Implementation) Dscal(n int, alpha float64, x []float64, incX int) { return } if (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 1 { if n == 0 { diff --git a/blas/gonum/level1double_ddot.go b/blas/gonum/level1double_ddot.go index 95205e754..d1a41554f 100644 --- a/blas/gonum/level1double_ddot.go +++ b/blas/gonum/level1double_ddot.go @@ -25,10 +25,10 @@ func (Implementation) Ddot(n int, x []float64, incX int, y []float64, incY int) } if incX == 1 && incY == 1 { if len(x) < n { - panic(badX) + panic(shortX) } if len(y) < n { - panic(badY) + panic(shortY) } return f64.DotUnitary(x[:n], y) } @@ -40,10 +40,10 @@ func (Implementation) Ddot(n int, x []float64, incX int, y []float64, incY int) iy = (-n + 1) * incY } if ix >= len(x) || ix+(n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if iy >= len(y) || iy+(n-1)*incY >= len(y) { - panic(badY) + panic(shortY) } return f64.DotInc(x, y, uintptr(n), uintptr(incX), uintptr(incY), uintptr(ix), uintptr(iy)) } diff --git a/blas/gonum/level1single.go b/blas/gonum/level1single.go index c34cd9432..f8a0b29ff 100644 --- a/blas/gonum/level1single.go +++ b/blas/gonum/level1single.go @@ -28,7 +28,7 @@ func (Implementation) Snrm2(n int, x []float32, incX int) float32 { return 0 } if incX > 0 && (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 2 { if n == 1 { @@ -104,7 +104,7 @@ func (Implementation) Sasum(n int, x []float32, incX int) float32 { return 0 } if incX > 0 && (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if incX == 1 { x = x[:n] @@ -132,7 +132,7 @@ func (Implementation) Isamax(n int, x []float32, incX int) int { return -1 } if incX > 0 && (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 2 { if n == 1 { @@ -186,10 +186,10 @@ func (Implementation) Sswap(n int, x []float32, incX int, y []float32, incY int) panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { x = x[:n] @@ -230,10 +230,10 @@ func (Implementation) Scopy(n int, x []float32, incX int, y []float32, incY int) panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { copy(y[:n], x[:n]) @@ -271,10 +271,10 @@ func (Implementation) Saxpy(n int, alpha float32, x []float32, incX int, y []flo panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if alpha == 0 { return @@ -440,7 +440,7 @@ func (Implementation) Srotmg(d1, d2, x1, y1 float32) (p blas.SrotmParams, rd1, r case blas.Rescaling: p.H = [4]float32{h11, h21, h12, h22} default: - panic("blas: unexpected blas.Flag") + panic(badFlag) } return p, d1, d2, x1 @@ -465,10 +465,10 @@ func (Implementation) Srot(n int, x []float32, incX int, y []float32, incY int, panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if incX == 1 && incY == 1 { x = x[:n] @@ -511,10 +511,10 @@ func (Implementation) Srotm(n int, x []float32, incX int, y []float32, incY int, panic(nLT0) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if p.Flag == blas.Identity { @@ -615,7 +615,7 @@ func (Implementation) Sscal(n int, alpha float32, x []float32, incX int) { return } if (n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if n < 1 { if n == 0 { diff --git a/blas/gonum/level1single_dsdot.go b/blas/gonum/level1single_dsdot.go index 3c9ef1227..a1185bb4c 100644 --- a/blas/gonum/level1single_dsdot.go +++ b/blas/gonum/level1single_dsdot.go @@ -29,10 +29,10 @@ func (Implementation) Dsdot(n int, x []float32, incX int, y []float32, incY int) } if incX == 1 && incY == 1 { if len(x) < n { - panic(badX) + panic(shortX) } if len(y) < n { - panic(badY) + panic(shortY) } return f32.DdotUnitary(x[:n], y) } @@ -44,10 +44,10 @@ func (Implementation) Dsdot(n int, x []float32, incX int, y []float32, incY int) iy = (-n + 1) * incY } if ix >= len(x) || ix+(n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if iy >= len(y) || iy+(n-1)*incY >= len(y) { - panic(badY) + panic(shortY) } return f32.DdotInc(x, y, uintptr(n), uintptr(incX), uintptr(incY), uintptr(ix), uintptr(iy)) } diff --git a/blas/gonum/level1single_sdot.go b/blas/gonum/level1single_sdot.go index 72fe6f814..9f5e4333d 100644 --- a/blas/gonum/level1single_sdot.go +++ b/blas/gonum/level1single_sdot.go @@ -29,10 +29,10 @@ func (Implementation) Sdot(n int, x []float32, incX int, y []float32, incY int) } if incX == 1 && incY == 1 { if len(x) < n { - panic(badX) + panic(shortX) } if len(y) < n { - panic(badY) + panic(shortY) } return f32.DotUnitary(x[:n], y) } @@ -44,10 +44,10 @@ func (Implementation) Sdot(n int, x []float32, incX int, y []float32, incY int) iy = (-n + 1) * incY } if ix >= len(x) || ix+(n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if iy >= len(y) || iy+(n-1)*incY >= len(y) { - panic(badY) + panic(shortY) } return f32.DotInc(x, y, uintptr(n), uintptr(incX), uintptr(incY), uintptr(ix), uintptr(iy)) } diff --git a/blas/gonum/level1single_sdsdot.go b/blas/gonum/level1single_sdsdot.go index 81142c483..42c41ab08 100644 --- a/blas/gonum/level1single_sdsdot.go +++ b/blas/gonum/level1single_sdsdot.go @@ -29,10 +29,10 @@ func (Implementation) Sdsdot(n int, alpha float32, x []float32, incX int, y []fl } if incX == 1 && incY == 1 { if len(x) < n { - panic(badX) + panic(shortX) } if len(y) < n { - panic(badY) + panic(shortY) } return alpha + float32(f32.DdotUnitary(x[:n], y)) } @@ -44,10 +44,10 @@ func (Implementation) Sdsdot(n int, alpha float32, x []float32, incX int, y []fl iy = (-n + 1) * incY } if ix >= len(x) || ix+(n-1)*incX >= len(x) { - panic(badX) + panic(shortX) } if iy >= len(y) || iy+(n-1)*incY >= len(y) { - panic(badY) + panic(shortY) } return alpha + float32(f32.DdotInc(x, y, uintptr(n), uintptr(incX), uintptr(incY), uintptr(ix), uintptr(iy))) } diff --git a/blas/gonum/level2cmplx128.go b/blas/gonum/level2cmplx128.go index 6af2a5ba7..ae4c95372 100644 --- a/blas/gonum/level2cmplx128.go +++ b/blas/gonum/level2cmplx128.go @@ -861,7 +861,7 @@ func (Implementation) Zhpmv(uplo blas.Uplo, n int, alpha complex128, ap []comple checkZVector('x', n, x, incX) checkZVector('y', n, y, incY) if len(ap) < n*(n+1)/2 { - panic("blas: insufficient A packed matrix slice length") + panic(shortAP) } if n == 0 || (alpha == 0 && beta == 1) { @@ -1007,7 +1007,7 @@ func (Implementation) Zhpr(uplo blas.Uplo, n int, alpha float64, x []complex128, } checkZVector('x', n, x, incX) if len(ap) < n*(n+1)/2 { - panic("blas: insufficient A packed matrix slice length") + panic(shortAP) } if n == 0 || alpha == 0 { @@ -1127,7 +1127,7 @@ func (Implementation) Zhpr2(uplo blas.Uplo, n int, alpha complex128, x []complex checkZVector('x', n, x, incX) checkZVector('y', n, y, incY) if len(ap) < n*(n+1)/2 { - panic("blas: insufficient A packed matrix slice length") + panic(shortAP) } if n == 0 || alpha == 0 { @@ -1685,7 +1685,7 @@ func (Implementation) Ztpmv(uplo blas.Uplo, trans blas.Transpose, diag blas.Diag } checkZVector('x', n, x, incX) if len(ap) < n*(n+1)/2 { - panic("blas: insufficient A packed matrix slice length") + panic(shortAP) } if n == 0 { @@ -1911,7 +1911,7 @@ func (Implementation) Ztpsv(uplo blas.Uplo, trans blas.Transpose, diag blas.Diag panic(badDiag) } if len(ap) < n*(n+1)/2 { - panic("blas: insufficient A packed matrix slice length") + panic(shortAP) } checkZVector('x', n, x, incX) diff --git a/blas/gonum/level2double.go b/blas/gonum/level2double.go index ce5f9ed16..29ddea879 100644 --- a/blas/gonum/level2double.go +++ b/blas/gonum/level2double.go @@ -17,7 +17,7 @@ var _ blas.Float64Level2 = Implementation{} func (Implementation) Dger(m, n int, alpha float64, x []float64, incX int, y []float64, incY int, a []float64, lda int) { // Check inputs if m < 0 { - panic("m < 0") + panic(mLT0) } if n < 0 { panic(nLT0) @@ -29,10 +29,10 @@ func (Implementation) Dger(m, n int, alpha float64, x []float64, incX int, y []f panic(zeroIncY) } if (incX > 0 && (m-1)*incX >= len(x)) || (incX < 0 && (1-m)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(m-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -90,10 +90,10 @@ func (Implementation) Dgbmv(tA blas.Transpose, m, n, kL, kU int, alpha float64, lenY = m } if (incX > 0 && (lenX-1)*incX >= len(x)) || (incX < 0 && (1-lenX)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (lenY-1)*incY >= len(y)) || (incY < 0 && (1-lenY)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(min(m, n+kL)-1)+kL+kU+1 > len(a) || lda < kL+kU+1 { panic(badLdA) @@ -215,7 +215,7 @@ func (Implementation) Dtrmv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -371,7 +371,7 @@ func (Implementation) Dtrsv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } // Quick return if possible if n == 0 { @@ -537,10 +537,10 @@ func (Implementation) Dsymv(ul blas.Uplo, n int, alpha float64, a []float64, lda panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -685,7 +685,7 @@ func (Implementation) Dtbmv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n, k i panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -884,7 +884,7 @@ func (Implementation) Dtpmv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -1065,7 +1065,7 @@ func (Implementation) Dtbsv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n, k i panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -1264,10 +1264,10 @@ func (Implementation) Dsbmv(ul blas.Uplo, n, k int, alpha float64, a []float64, panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(n-1)+k+1 > len(a) || lda < k+1 { panic(badLdA) @@ -1397,7 +1397,7 @@ func (Implementation) Dsyr(ul blas.Uplo, n int, alpha float64, x []float64, incX panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -1486,10 +1486,10 @@ func (Implementation) Dsyr2(ul blas.Uplo, n int, alpha float64, x []float64, inc panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -1595,7 +1595,7 @@ func (Implementation) Dtpsv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -1766,10 +1766,10 @@ func (Implementation) Dspmv(ul blas.Uplo, n int, alpha float64, a []float64, x [ panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } // Quick return if possible if n == 0 || (alpha == 0 && beta == 1) { @@ -1901,7 +1901,7 @@ func (Implementation) Dspr(ul blas.Uplo, n int, alpha float64, x []float64, incX panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if len(a) < (n*(n+1))/2 { panic(badLdA) @@ -1986,10 +1986,10 @@ func (Implementation) Dspr2(ul blas.Uplo, n int, alpha float64, x []float64, inc panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if len(ap) < (n*(n+1))/2 { panic(badLdA) diff --git a/blas/gonum/level2single.go b/blas/gonum/level2single.go index 7bc8b0d43..33896a1b4 100644 --- a/blas/gonum/level2single.go +++ b/blas/gonum/level2single.go @@ -21,7 +21,7 @@ var _ blas.Float32Level2 = Implementation{} func (Implementation) Sger(m, n int, alpha float32, x []float32, incX int, y []float32, incY int, a []float32, lda int) { // Check inputs if m < 0 { - panic("m < 0") + panic(mLT0) } if n < 0 { panic(nLT0) @@ -33,10 +33,10 @@ func (Implementation) Sger(m, n int, alpha float32, x []float32, incX int, y []f panic(zeroIncY) } if (incX > 0 && (m-1)*incX >= len(x)) || (incX < 0 && (1-m)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(m-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -96,10 +96,10 @@ func (Implementation) Sgbmv(tA blas.Transpose, m, n, kL, kU int, alpha float32, lenY = m } if (incX > 0 && (lenX-1)*incX >= len(x)) || (incX < 0 && (1-lenX)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (lenY-1)*incY >= len(y)) || (incY < 0 && (1-lenY)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(min(m, n+kL)-1)+kL+kU+1 > len(a) || lda < kL+kU+1 { panic(badLdA) @@ -223,7 +223,7 @@ func (Implementation) Strmv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -381,7 +381,7 @@ func (Implementation) Strsv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } // Quick return if possible if n == 0 { @@ -549,10 +549,10 @@ func (Implementation) Ssymv(ul blas.Uplo, n int, alpha float32, a []float32, lda panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -699,7 +699,7 @@ func (Implementation) Stbmv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n, k i panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -900,7 +900,7 @@ func (Implementation) Stpmv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -1083,7 +1083,7 @@ func (Implementation) Stbsv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n, k i panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -1284,10 +1284,10 @@ func (Implementation) Ssbmv(ul blas.Uplo, n, k int, alpha float32, a []float32, panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(n-1)+k+1 > len(a) || lda < k+1 { panic(badLdA) @@ -1419,7 +1419,7 @@ func (Implementation) Ssyr(ul blas.Uplo, n int, alpha float32, x []float32, incX panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -1510,10 +1510,10 @@ func (Implementation) Ssyr2(ul blas.Uplo, n int, alpha float32, x []float32, inc panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if lda*(n-1)+n > len(a) || lda < max(1, n) { panic(badLdA) @@ -1621,7 +1621,7 @@ func (Implementation) Stpsv(ul blas.Uplo, tA blas.Transpose, d blas.Diag, n int, panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if n == 0 { return @@ -1794,10 +1794,10 @@ func (Implementation) Sspmv(ul blas.Uplo, n int, alpha float32, a []float32, x [ panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } // Quick return if possible if n == 0 || (alpha == 0 && beta == 1) { @@ -1931,7 +1931,7 @@ func (Implementation) Sspr(ul blas.Uplo, n int, alpha float32, x []float32, incX panic(zeroIncX) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if len(a) < (n*(n+1))/2 { panic(badLdA) @@ -2018,10 +2018,10 @@ func (Implementation) Sspr2(ul blas.Uplo, n int, alpha float32, x []float32, inc panic(zeroIncY) } if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) { - panic(badX) + panic(shortX) } if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) { - panic(badY) + panic(shortY) } if len(ap) < (n*(n+1))/2 { panic(badLdA) diff --git a/blas/gonum/level3double.go b/blas/gonum/level3double.go index 39e754d0a..e8aff4d55 100644 --- a/blas/gonum/level3double.go +++ b/blas/gonum/level3double.go @@ -240,7 +240,7 @@ func (Implementation) Dtrsm(s blas.Side, ul blas.Uplo, tA blas.Transpose, d blas // is a scalar. func (Implementation) Dsymm(s blas.Side, ul blas.Uplo, m, n int, alpha float64, a []float64, lda int, b []float64, ldb int, beta float64, c []float64, ldc int) { if s != blas.Right && s != blas.Left { - panic("goblas: bad side") + panic(badSide) } if ul != blas.Lower && ul != blas.Upper { panic(badUplo) diff --git a/blas/gonum/level3single.go b/blas/gonum/level3single.go index d24ce78c8..27a8d730f 100644 --- a/blas/gonum/level3single.go +++ b/blas/gonum/level3single.go @@ -246,7 +246,7 @@ func (Implementation) Strsm(s blas.Side, ul blas.Uplo, tA blas.Transpose, d blas // Float32 implementations are autogenerated and not directly tested. func (Implementation) Ssymm(s blas.Side, ul blas.Uplo, m, n int, alpha float32, a []float32, lda int, b []float32, ldb int, beta float32, c []float32, ldc int) { if s != blas.Right && s != blas.Left { - panic("goblas: bad side") + panic(badSide) } if ul != blas.Lower && ul != blas.Upper { panic(badUplo)