]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1.10] cmd/compile: fix zero extend after float->int conversion
authorKeith Randall <keithr@alum.mit.edu>
Thu, 10 May 2018 17:15:52 +0000 (10:15 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Fri, 24 Aug 2018 16:18:39 +0000 (16:18 +0000)
commit305b0de625833f4986b6556cba633e6f21c37c18
tree8599258966d1dfbee9cda4952992ed905c1b9943
parentba5e308ea9496e4be0bd8c59a5291359e0ea98b4
[release-branch.go1.10] cmd/compile: fix zero extend after float->int conversion

Don't do direct loads from argument slots if the sizes don't match.
This prevents us from loading from a float32 using a uint64 load
during expressions like uint64(math.float32Bits(f)) where f is a float32 arg.

Fixes #25335

Change-Id: I3887d76f78c844ba546243e7721d811c3d4a9700
Reviewed-on: https://go-review.googlesource.com/112637
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-on: https://go-review.googlesource.com/131276
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/cmd/compile/internal/ssa/gen/AMD64.rules
src/cmd/compile/internal/ssa/gen/AMD64Ops.go
src/cmd/compile/internal/ssa/rewriteAMD64.go
test/fixedbugs/issue25322.go [new file with mode: 0644]
test/fixedbugs/issue25322.out [new file with mode: 0644]