diff options
Diffstat (limited to 'libgo/go/math/exp.go')
-rw-r--r-- | libgo/go/math/exp.go | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libgo/go/math/exp.go b/libgo/go/math/exp.go index f3d3cb6..7ab80b4 100644 --- a/libgo/go/math/exp.go +++ b/libgo/go/math/exp.go @@ -11,14 +11,13 @@ package math // Exp(NaN) = NaN // Very large values overflow to 0 or +Inf. // Very small values underflow to 1. - -//extern exp -func libc_exp(float64) float64 - func Exp(x float64) float64 { return libc_exp(x) } +//extern exp +func libc_exp(float64) float64 + // The original C code, the long comment, and the constants // below are from FreeBSD's /usr/src/lib/msun/src/e_exp.c // and came with this notice. The go code is a simplified @@ -139,6 +138,9 @@ func exp(x float64) float64 { // // Special cases are the same as Exp. func Exp2(x float64) float64 { + if haveArchExp2 { + return archExp2(x) + } return exp2(x) } |