github.com/gopherd/gonum@v0.0.4/internal/asm/f32/stubs_amd64.go (about) 1 // Copyright ©2016 The Gonum Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 //go:build !noasm && !gccgo && !safe 6 // +build !noasm,!gccgo,!safe 7 8 package f32 9 10 // AxpyUnitary is 11 // for i, v := range x { 12 // y[i] += alpha * v 13 // } 14 func AxpyUnitary(alpha float32, x, y []float32) 15 16 // AxpyUnitaryTo is 17 // for i, v := range x { 18 // dst[i] = alpha*v + y[i] 19 // } 20 func AxpyUnitaryTo(dst []float32, alpha float32, x, y []float32) 21 22 // AxpyInc is 23 // for i := 0; i < int(n); i++ { 24 // y[iy] += alpha * x[ix] 25 // ix += incX 26 // iy += incY 27 // } 28 func AxpyInc(alpha float32, x, y []float32, n, incX, incY, ix, iy uintptr) 29 30 // AxpyIncTo is 31 // for i := 0; i < int(n); i++ { 32 // dst[idst] = alpha*x[ix] + y[iy] 33 // ix += incX 34 // iy += incY 35 // idst += incDst 36 // } 37 func AxpyIncTo(dst []float32, incDst, idst uintptr, alpha float32, x, y []float32, n, incX, incY, ix, iy uintptr) 38 39 // DdotUnitary is 40 // for i, v := range x { 41 // sum += float64(y[i]) * float64(v) 42 // } 43 // return 44 func DdotUnitary(x, y []float32) (sum float64) 45 46 // DdotInc is 47 // for i := 0; i < int(n); i++ { 48 // sum += float64(y[iy]) * float64(x[ix]) 49 // ix += incX 50 // iy += incY 51 // } 52 // return 53 func DdotInc(x, y []float32, n, incX, incY, ix, iy uintptr) (sum float64) 54 55 // DotUnitary is 56 // for i, v := range x { 57 // sum += y[i] * v 58 // } 59 // return sum 60 func DotUnitary(x, y []float32) (sum float32) 61 62 // DotInc is 63 // for i := 0; i < int(n); i++ { 64 // sum += y[iy] * x[ix] 65 // ix += incX 66 // iy += incY 67 // } 68 // return sum 69 func DotInc(x, y []float32, n, incX, incY, ix, iy uintptr) (sum float32) 70 71 // Sum is 72 // var sum float32 73 // for _, v := range x { 74 // sum += v 75 // } 76 // return sum 77 func Sum(x []float32) float32