go/src/math
Matthew Dempsky 7832c82bf5 math: fix bad shift in Expm1
Noticed by cmd/vet.

Expected values array produced by Python instead of Keisan because:

1) Keisan's website calculator is painfully difficult to copy/paste
values into and out of, and

2) after tediously computing e^(vf[i] * 10) - 1 via Keisan I
discovered that Keisan computing vf[i]*10 in a higher precision was
giving substantially different output values.

Also, testing uses "close" instead of "veryclose" because 386's
assembly implementation produces values for some of the test cases
that fail "veryclose".  Curiously, Expm1(vf[i]*10) is identical to
Exp(vf[i]*10)-1 on 386, whereas with the portable implementation
they're only "veryclose".

Investigating these questions is left to someone else.  I just wanted
to fix the cmd/vet warning.

Fixes #13101.

Change-Id: Ica8f6c267d01aa4cc31f53593e95812746942fbc
Reviewed-on: https://go-review.googlesource.com/16505
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Klaus Post <klauspost@gmail.com>
Reviewed-by: Robert Griesemer <gri@golang.org>
2015-10-30 22:55:19 +00:00
..
big math/big: fix SetMantExp comment 2015-10-23 16:38:27 +00:00
cmplx math/cmplx: make error tolerance test function of expected value 2015-10-07 18:41:11 +00:00
rand math/rand: make Rand fulfill the Reader interface 2015-09-16 17:54:01 +00:00
abs.go math: fix typo and braino in my earlier commit 2015-10-29 21:12:08 +00:00
acosh.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
all_test.go math: fix bad shift in Expm1 2015-10-30 22:55:19 +00:00
asin.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
asin_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
asin_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
asin_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
asin_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
asinh.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan2.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan2_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan2_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan2_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan2_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atan_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
atanh.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
bits.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
cbrt.go math: faster Cbrt 2015-02-23 21:04:46 +00:00
const.go math: explain OEIS link 2015-06-26 01:25:58 +00:00
copysign.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
dim.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
dim_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
dim_amd64.s math: Dim, Max, Min - allow more bit patterns for NaN 2015-02-23 23:07:01 +00:00
dim_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
dim_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
erf.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp2_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp2_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp2_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp2_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
exp_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
expm1.go math: fix bad shift in Expm1 2015-10-30 22:55:19 +00:00
expm1_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
expm1_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
expm1_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
expm1_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
export_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
floor.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
floor_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
floor_amd64.s math: optimize ceil/floor functions on amd64 2015-10-03 15:55:08 +00:00
floor_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
floor_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
floor_asm.go math: optimize ceil/floor functions on amd64 2015-10-03 15:55:08 +00:00
frexp.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
frexp_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
frexp_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
frexp_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
frexp_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
gamma.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
hypot.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
hypot_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
hypot_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
hypot_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
hypot_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
j0.go all: use one 'l' when cancelling everywhere except Solaris 2015-09-11 18:31:51 +00:00
j1.go all: use one 'l' when cancelling everywhere except Solaris 2015-09-11 18:31:51 +00:00
jn.go math: avoid unused assignment in jn.go 2015-08-24 14:34:36 +00:00
ldexp.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
ldexp_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
ldexp_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
ldexp_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
ldexp_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
lgamma.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log1p.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log1p_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log1p_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log1p_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log1p_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log10.go math: fix Log2 test failures on ppc64 (and s390) 2015-07-15 05:35:22 +00:00
log10_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log10_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log10_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log10_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
log_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
logb.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mod.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mod_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mod_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mod_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mod_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
modf.go math: Modf(-0) returns -0,-0 2015-10-09 17:09:16 +00:00
modf_386.s math: Modf(-0) returns -0,-0 2015-10-09 17:09:16 +00:00
modf_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
modf_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
modf_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
nextafter.go math: change Nextafter64 to Nextafter in the description of Nextafter 2015-02-17 14:29:18 +00:00
pow.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
pow10.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
remainder.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
remainder_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
remainder_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
remainder_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
remainder_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
signbit.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sin.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sin_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sin_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sin_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sin_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sincos.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sincos_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sincos_amd64.s math: avoid assumption of denormalized math mode in Sincos 2014-09-26 17:13:24 -04:00
sincos_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sincos_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sinh.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sqrt.go math: fix normalization bug in pure-Go sqrt 2015-10-23 18:29:10 +00:00
sqrt_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sqrt_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sqrt_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sqrt_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sqrt_arm64.s math, cmd/internal/gc, cmd/7g: enable SQRT inlining, add assembly implementation 2015-04-03 23:48:00 +00:00
stubs_arm64.s math, cmd/internal/gc, cmd/7g: enable SQRT inlining, add assembly implementation 2015-04-03 23:48:00 +00:00
stubs_ppc64x.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
tan.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
tan_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
tan_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
tan_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
tan_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
tanh.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
unsafe.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00