1
0
mirror of https://github.com/golang/go synced 2024-11-19 05:24:42 -07:00
go/src/math
Robert Griesemer 41b9e99d5b cmd/gofmt: fix normalization of imaginary number literals
The old code only normalized decimal integer imaginary number
literals. But with the generalized imaginary number syntax,
the number value may be decimal, binary, octal, or hexadecimal,
integer or floating-point.

The new code only looks at the number pattern. Only for decimal
integer imaginary literals do we need to strip leading zeroes.
The remaining normalization code simply ignore the 'i' suffix.
As a result, the new code is both simpler and shorter.

Fixes #32718.

Change-Id: If43fc962a48ed62002e65d5c81fddbb9bd283984
Reviewed-on: https://go-review.googlesource.com/c/go/+/183378
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2019-06-21 17:24:29 +00:00
..
big all: shorten some tests 2019-05-22 12:54:00 +00:00
bits math/bits: document that Add, Sub, Mul, RotateLeft, ReverseBytes are constant time 2019-05-21 20:15:52 +00:00
cmplx cmd/gofmt: fix normalization of imaginary number literals 2019-06-21 17:24:29 +00:00
rand all: shorten some tests 2019-05-22 12:54:00 +00:00
abs.go cmd/compile,math: improve code generation for math.Abs 2017-08-25 19:15:01 +00:00
acos_s390x.s math: use s390x mnemonics rather than binary encodings 2018-08-20 17:42:08 +00:00
acosh_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
acosh.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
all_test.go math: fix math.Remainder(-x,x) (for Inf > x > 0) 2019-03-15 14:52:51 +00:00
arith_s390x_test.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
arith_s390x.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
asin_386.s
asin_s390x.s math: use s390x mnemonics rather than binary encodings 2018-08-20 17:42:08 +00:00
asin.go
asinh_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
asinh.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
atan2_386.s
atan2_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
atan2.go
atan_386.s
atan_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
atan.go
atanh_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
atanh.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
bits.go math: add RoundToEven function 2017-10-24 22:33:09 +00:00
cbrt_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
cbrt.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
const.go math: change oeis.org urls to https 2017-08-08 08:56:40 +00:00
copysign.go
cosh_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
dim_amd64.s math: remove asm version of Dim 2017-11-30 21:00:33 +00:00
dim_amd64p32.s
dim_arm64.s math: remove asm version of Dim 2017-11-30 21:00:33 +00:00
dim_s390x.s math: optimize dim and remove s390x assembly implementation 2017-10-30 19:05:51 +00:00
dim.go math: remove asm version of Dim 2017-11-30 21:00:33 +00:00
erf_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
erf.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
erfc_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
erfinv.go all: update comment URLs from HTTP to HTTPS, where possible 2018-06-01 21:52:00 +00:00
example_test.go math: add examples for Log, Log2, Mod, and Abs 2019-06-19 07:09:13 +00:00
exp2_386.s
exp_amd64.s all: update comment URLs from HTTP to HTTPS, where possible 2018-06-01 21:52:00 +00:00
exp_amd64p32.s
exp_arm64.s math: optimize Exp and Exp2 on arm64 2018-03-27 19:55:02 +00:00
exp_asm.go math: implement fast path for Exp 2017-09-20 21:43:00 +00:00
exp_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
exp.go math: fix inaccurate result of Exp(1) 2017-08-17 09:01:27 +00:00
expm1_386.s all: this big patch remove whitespace from assembly files 2018-10-03 15:28:51 +00:00
expm1_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
expm1.go all: unindent some big chunks of code 2017-08-18 06:59:48 +00:00
export_s390x_test.go math: use SIMD to accelerate additional scalar math functions on s390x 2017-05-08 19:52:30 +00:00
export_test.go math: use constant rather than variable for exported test threshold 2018-12-13 06:33:18 +00:00
floor_386.s
floor_amd64.s cmd/compile: intrinsify math.{Trunc/Ceil/Floor} on amd64 2017-10-31 19:30:54 +00:00
floor_amd64p32.s
floor_arm64.s
floor_ppc64x.s
floor_s390x.s
floor_wasm.s math, math/big: add wasm architecture 2018-05-08 13:29:22 +00:00
floor.go math: add RoundToEven function 2017-10-24 22:33:09 +00:00
frexp_386.s
frexp.go
gamma.go
huge_test.go math: don't run huge argument tests on s390x 2018-12-13 22:13:57 +00:00
hypot_386.s
hypot_amd64.s
hypot_amd64p32.s
hypot.go math: use Abs rather than if x < 0 { x = -x } 2018-02-13 20:12:23 +00:00
j0.go all: s/cancelation/cancellation/ 2019-04-16 20:27:15 +00:00
j1.go all: s/cancelation/cancellation/ 2019-04-16 20:27:15 +00:00
jn.go math: use Sincos instead of Sin and Cos in Jn and Yn 2019-03-25 22:41:37 +00:00
ldexp_386.s
ldexp.go math: fix Ldexp when result is below ldexp(2, -1075) 2018-03-29 23:14:13 +00:00
lgamma.go go/printer, gofmt: tuned table alignment for better results 2018-04-04 13:39:34 -07:00
log1p_386.s
log1p_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
log1p.go math: fix ternary correction statement in Log1p 2019-01-07 18:57:45 +00:00
log10_386.s
log10_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
log10.go
log_386.s
log_amd64.s
log_amd64p32.s
log_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
log.go
logb.go
mod_386.s
mod.go math: use Abs in Mod rather than if x < 0 { x = -x} 2018-10-04 17:32:44 +00:00
modf_386.s
modf_arm64.s
modf_ppc64x.s math: implement asm modf for ppc64x 2017-11-02 13:24:32 +00:00
modf.go
nextafter.go
pow10.go
pow_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
pow.go math: use Abs in Pow rather than if x < 0 { x = -x } 2018-10-04 17:33:04 +00:00
remainder_386.s
remainder.go math: fix math.Remainder(-x,x) (for Inf > x > 0) 2019-03-15 14:52:51 +00:00
signbit.go all: use "reports whether" consistently in the few places that didn't 2018-11-02 22:47:58 +00:00
sin_s390x.s cmd/asm, math: add s390x floating point test instructions 2018-04-03 16:08:04 +00:00
sin.go src, misc: apply gofmt 2019-02-19 20:38:28 +00:00
sincos.go src, misc: apply gofmt 2019-02-19 20:38:28 +00:00
sinh_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
sinh.go math,net: omit explicit true tag expr in switch 2018-08-20 22:15:59 +00:00
sqrt_386.s all: this big patch remove whitespace from assembly files 2018-10-03 15:28:51 +00:00
sqrt_amd64.s
sqrt_amd64p32.s
sqrt_arm64.s
sqrt_arm.s all: this big patch remove whitespace from assembly files 2018-10-03 15:28:51 +00:00
sqrt_mipsx.s runtime/cgo, math: don't use FP instructions for soft-float mips{,le} 2017-11-30 17:12:32 +00:00
sqrt_ppc64x.s
sqrt_s390x.s
sqrt_wasm.s math, math/big: add wasm architecture 2018-05-08 13:29:22 +00:00
sqrt.go
stubs_386.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_amd64.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_amd64p32.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_arm64.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_arm.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_mips64x.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_mipsx.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_ppc64x.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_s390x.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
stubs_wasm.s math: consolidate assembly stub implementations 2019-04-23 14:50:16 +00:00
tan_s390x.s math: use s390x mnemonics rather than binary encodings 2018-08-20 17:42:08 +00:00
tan.go src, misc: apply gofmt 2019-02-19 20:38:28 +00:00
tanh_s390x.s math: use new mnemonics for 'rotate then insert' on s390x 2019-04-16 15:34:41 +00:00
tanh.go src, misc: apply gofmt 2019-02-19 20:38:28 +00:00
trig_reduce.go math: correct mPi4 comment 2018-12-13 20:35:45 +00:00
unsafe.go math: document sign bit correspondence for floating-point/bits conversions 2018-12-06 22:27:54 +00:00