1
0
mirror of https://github.com/golang/go synced 2024-11-18 19:04:40 -07:00
go/src/reflect
Keith Randall 7ffbea9fd8 reflect: when Converting between float32s, don't lose signal NaNs
Trying this CL again, with a test that skips 387.

When converting from float32->float64->float32, any signal NaNs
get converted to quiet NaNs. Avoid that so using reflect.Value.Convert
between two float32 types keeps the signal bit of NaNs.

Skip the test on 387. I don't see any sane way of ensuring that a
float load + float store is faithful on that platform.

Fixes #36400

Change-Id: Ic316c74ddc155632e40424e207375b5d50dcd853
Reviewed-on: https://go-review.googlesource.com/c/go/+/221792
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
2020-04-01 16:41:14 +00:00
..
all_test.go reflect: when Converting between float32s, don't lose signal NaNs 2020-04-01 16:41:14 +00:00
asm_386.s
asm_amd64.s
asm_arm64.s
asm_arm.s
asm_mips64x.s
asm_mipsx.s
asm_ppc64x.s
asm_riscv64.s reflect: correct riscv64 assembly 2020-01-19 15:28:32 +00:00
asm_s390x.s
asm_wasm.s all: rename WebAssembly instructions according to spec changes 2019-03-03 21:10:01 +00:00
deepequal.go reflect: fix panic in DeepEqual when checking a cycle 2019-09-11 00:56:01 +00:00
example_test.go
export_test.go reflect: fix unsafe conversions reported by -d=checkptr 2019-10-22 18:09:15 +00:00
makefunc.go
set_test.go
swapper.go runtime: remove kindNoPointers 2019-03-25 20:46:35 +00:00
tostring_test.go
type.go reflect: record PkgPath of StructOf arguments 2019-12-19 05:39:31 +00:00
value.go reflect: when Converting between float32s, don't lose signal NaNs 2020-04-01 16:41:14 +00:00