go/src
Cherry Zhang c96e3bcc97 cmd/compile: fix type of OffPtr in some optimization rules
In some optimization rules the type of generated OffPtr was
incorrectly set to the type of the pointee, instead of the
pointer. When the OffPtr value is spilled, this may generate
a spill of the wrong type, e.g. a floating point spill of an
integer (pointer) value. On Wasm, this leads to invalid
bytecode.

Fixes #27961.

Change-Id: I5d464847eb900ed90794105c0013a1a7330756cc
Reviewed-on: https://go-review.googlesource.com/c/139257
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
Reviewed-by: Richard Musiol <neelance@gmail.com>
2018-10-03 15:01:47 +00:00
..
archive archive/tar: remore redundant parens in type expressions 2018-08-21 01:47:17 +00:00
bufio bufio: avoid rescanning buffer multiple times in ReadSlice 2018-08-22 17:06:28 +00:00
builtin builtin: document when len and cap are constant 2018-09-18 21:52:11 +00:00
bytes bytes, strings: add ReplaceAll 2018-09-26 20:51:23 +00:00
cmd cmd/compile: fix type of OffPtr in some optimization rules 2018-10-03 15:01:47 +00:00
compress Revert "compress: move benchmark text from src/testdata to src/compress/testdata" 2018-10-01 16:16:21 +00:00
container container/heap: clarify that Remove returns the removed element 2018-08-20 18:05:11 +00:00
context context: don't talk about tools that don't exist 2018-08-22 22:11:24 +00:00
crypto all: remove repeated "the" from comments 2018-09-28 08:46:55 +00:00
database/sql database/sql: correctly report MaxIdleClosed stat 2018-10-02 19:24:37 +00:00
debug debug/elf: add R_RISCV_32_PCREL relocation 2018-09-07 11:07:39 +00:00
encoding all: use strings.ReplaceAll and bytes.ReplaceAll where applicable 2018-09-26 22:14:25 +00:00
errors
expvar expvar: fix name of Var interface 2018-09-06 05:43:52 +00:00
flag all: use strings.ReplaceAll and bytes.ReplaceAll where applicable 2018-09-26 22:14:25 +00:00
fmt fmt: unify the printing examples 2018-09-24 21:15:52 +00:00
go go/build, runtime/internal/sys: add GOOS=aix 2018-09-28 13:45:09 +00:00
hash hash/crc64: lazily initialize slice8Tables 2018-08-21 04:50:21 +00:00
html all: use strings.ReplaceAll and bytes.ReplaceAll where applicable 2018-09-26 22:14:25 +00:00
image image: optimize bounds checking for At and Set methods 2018-10-01 19:16:00 +00:00
index/suffixarray index/suffixarray: fix a typo mistake in comments 2018-05-29 12:16:51 +00:00
internal go/build: move isStandardPackage to new internal/goroot package 2018-09-25 22:07:43 +00:00
io ghchinoy: add example for ioutil.WriteFile 2018-08-30 18:38:34 +00:00
log log/syslog: skip tests that depend on daemon on builders 2018-05-22 18:26:03 +00:00
math cmd/compile: optimize math.Float64(32)bits and math.Float64(32)frombits on arm64 2018-09-17 20:49:04 +00:00
mime all: use strings.ReplaceAll and bytes.ReplaceAll where applicable 2018-09-26 22:14:25 +00:00
net net/http: explain more how Pusher.Push works 2018-10-03 02:32:28 +00:00
os os: use FILE_FLAG_OPEN_REPARSE_POINT in SameFile 2018-09-29 04:02:38 +00:00
path path/filepath: fix Windows-specific Clean bug 2018-09-29 04:26:02 +00:00
plugin plugin: remove unused func 2018-08-22 16:29:03 +00:00
reflect reflect: fix s390x reflect method calls 2018-09-30 20:30:55 +00:00
regexp regexp: fix incorrect name in Match doc comment 2018-09-13 16:29:06 +00:00
runtime runtime: eliminate gchelper mechanism 2018-10-02 20:35:38 +00:00
sort all: update comment URLs from HTTP to HTTPS, where possible 2018-06-01 21:52:00 +00:00
strconv strconv: add example for IsGraphic 2018-09-03 05:45:52 +00:00
strings all: use strings.ReplaceAll and bytes.ReplaceAll where applicable 2018-09-26 22:14:25 +00:00
sync sync: simplify (*entry).tryStore 2018-09-27 21:44:20 +00:00
syscall syscall: replace lstat, lchown, stat to please Android O 2018-09-24 17:08:51 +00:00
testdata Revert "compress: move benchmark text from src/testdata to src/compress/testdata" 2018-10-01 16:16:21 +00:00
testing all: use strings.ReplaceAll and bytes.ReplaceAll where applicable 2018-09-26 22:14:25 +00:00
text all: use strings.ReplaceAll and bytes.ReplaceAll where applicable 2018-09-26 22:14:25 +00:00
time time: return ENOENT from androidLoadTzinfoFromTzdata if zone not found 2018-09-15 14:58:35 +00:00
unicode unicode: fix SpecialCase to follow its docs & respect explict no-op mappings 2018-06-17 08:48:39 +00:00
unsafe unsafe: fix reference to string header 2018-02-26 18:35:46 +00:00
vendor/golang_org/x vendor: update golang.org/x/net/http2/hpack 2018-08-01 20:05:31 +00:00
all.bash Revert "build: fail nicely if somebody runs all.bash from a binary tarball package" 2017-04-28 21:19:32 +00:00
all.bat
all.rc
androidtest.bash androidtest.bash: don't require GOARCH set 2018-03-07 14:01:43 +00:00
bootstrap.bash bootstrap.bash: only fetch git revision if we need it 2018-01-30 15:11:56 +00:00
buildall.bash src/*.bash: use tabs consistently 2017-03-09 21:30:31 +00:00
clean.bash
clean.bat
clean.rc
cmp.bash all: make copyright headers consistent with one space after period 2016-11-04 20:46:25 +00:00
iostest.bash iostest.bash: don't build std library twice 2018-03-06 16:08:20 +00:00
make.bash cmd/go: add $GOFLAGS environment variable 2018-08-01 00:35:21 +00:00
make.bat src/make.bat: add missing go.exe extension 2018-08-25 22:42:46 +00:00
Make.dist
make.rc cmd/go: add $GOFLAGS environment variable 2018-08-01 00:35:21 +00:00
naclmake.bash all: use consistent shebang line across all shell scripts 2018-08-22 16:41:11 +00:00
nacltest.bash all: use consistent shebang line across all shell scripts 2018-08-22 16:41:11 +00:00
race.bash runtime/cgo: Add initial NetBSD Thread Sanitizer support 2018-07-10 23:14:31 +00:00
race.bat cmd/dist: fix compilation on windows 2018-08-25 22:39:17 +00:00
run.bash cmd/go: add $GOFLAGS environment variable 2018-08-01 00:35:21 +00:00
run.bat cmd/go: add $GOFLAGS environment variable 2018-08-01 00:35:21 +00:00
run.rc cmd/go: add $GOFLAGS environment variable 2018-08-01 00:35:21 +00:00