- 27 Jun, 2016 3 commits
-
-
Keith Randall authored
Make sure the pointer to the heap copy of an output parameter is kept live throughout the function. The function could panic at any point, and then a defer could recover. Thus, we need the pointer to the heap copy always available so the post-deferreturn code can copy the return value back to the stack. Before this CL, the pointer to the heap copy could be considered dead in certain situations, like code which is reverse dominated by a panic call. Fixes #16095. Change-Id: Ic3800423e563670e5b567b473bf4c84cddb49a4c Reviewed-on: https://go-review.googlesource.com/24213 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
David Chase <drchase@google.com>
-
Konstantin Shaposhnikov authored
This fixes the obvious bug and makes go vet look for identifiers in foo package when checking example names in foo_test package. Note that for this check to work the foo package have to be installed (using go install). This commit however doesn't fix TestDivergentPackagesExamples test that is not implemented correctly and passes only by chance. Updates #16189 Change-Id: I5c2f675cd07e5b66cf0432b2b3e422ab45c3dedd Reviewed-on: https://go-review.googlesource.com/24487Reviewed-by:
Dmitri Shuralyov <shurcool@gmail.com> Run-TryBot: Rob Pike <r@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Rob Pike <r@golang.org>
-
David Crawshaw authored
Swtich from a sync.RWMutex to atomic.Value for cacheTypeFields. On GOARCH=386, this recovers most of the remaining performance difference from the 1.6 release. Compared with tip on linux/386: name old time/op new time/op delta CodeDecoder-40 92.8ms ± 1% 87.7ms ± 1% -5.50% (p=0.000 n=10+10) name old speed new speed delta CodeDecoder-40 20.9MB/s ± 1% 22.1MB/s ± 1% +5.83% (p=0.000 n=10+10) With more time and care, I believe more of the JSON decoder's work could be shifted so it is done before decoding, and independent of the number of bytes processed. Maybe someone could explore that for Go 1.8. For #16117. Change-Id: I049655b2e5b76384a0d5f4b90e3ec7cc8d8c4340 Reviewed-on: https://go-review.googlesource.com/24472 Run-TryBot: Dmitry Vyukov <dvyukov@google.com> Reviewed-by:
Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 26 Jun, 2016 1 commit
-
-
Konstantin Shaposhnikov authored
Fixes #15788 Change-Id: I5a1fd1e5992f1c16cf8d8437d742bf02e1653b9c Reviewed-on: https://go-review.googlesource.com/23461Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 25 Jun, 2016 1 commit
-
-
Ian Lance Taylor authored
If we are using a remote source (a URL), and the user did not specify the executable file to use, then don't try to use a local source. This was misbehaving because the local symbolizer will not fail if there is any memory map available, but the presence of a memory map does not ensure that the files and symbols are actually available. We still need a pprof testsuite. Fixes #16159. Change-Id: I0250082a4d5181c7babc7eeec6bc95b2f3bcaec9 Reviewed-on: https://go-review.googlesource.com/24464 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by:
Joe Tsai <thebrokentoaster@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 24 Jun, 2016 7 commits
-
-
Ian Lance Taylor authored
Handling a symbol with address 0 and size 0, such as an ELF STT_FILE symbols, was causing us to disassemble the entire program. We started adding STT_FILE symbols to help fix issue #13247. Fixes #16154. Change-Id: I174b9614e66ddc3d65801f7c1af7650f291ac2af Reviewed-on: https://go-review.googlesource.com/24460 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Joe Tsai <thebrokentoaster@gmail.com>
-
Nathan VanBenschoten authored
Previously, a 0 mantissa was special-cased during big.Float parsing, but not during big.Rat parsing. This meant that a value like 0e9999999999 would parse successfully in big.Float.SetString, but would hang in big.Rat.SetString. This discrepancy became an issue in https://golang.org/src/go/constant/value.go?#L250, where the big.Float would report an exponent of 0, so big.Rat.SetString would be used and would subsequently hang. A Go Playground example of this is https://play.golang.org/p/3fy28eUJuF The solution is to special-case a zero mantissa during big.Rat parsing as well, so that neither big.Rat nor big.Float will hang when parsing a value with 0 mantissa but a large exponent. This was discovered using go-fuzz on CockroachDB: https://github.com/cockroachdb/go-fuzz/blob/master/examples/parser/main.go Fixes #16176 Change-Id: I775558a8682adbeba1cc9d20ba10f8ed26259c56 Reviewed-on: https://go-review.googlesource.com/24430Reviewed-by:
Robert Griesemer <gri@golang.org> Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
David Crawshaw authored
Improves JSON decoding benchmark: name old time/op new time/op delta CodeDecoder-8 41.3ms ± 6% 39.8ms ± 1% -3.61% (p=0.000 n=10+10) name old speed new speed delta CodeDecoder-8 47.0MB/s ± 6% 48.7MB/s ± 1% +3.66% (p=0.000 n=10+10) Change-Id: I524ee05c432fad5252e79b29222ec635c1dee4b4 Reviewed-on: https://go-review.googlesource.com/24452Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Rob Pike authored
It was out of date; in 1.7 the format changes to 0s. Change-Id: I2013a1b0951afc5607828f313641b51c74433257 Reviewed-on: https://go-review.googlesource.com/24421Reviewed-by:
Joe Tsai <thebrokentoaster@gmail.com> Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Sameer Ajmani authored
Also replace double spaces after periods with single spaces. Change-Id: Iedaea47595c5ce64e7e8aa3a368f36d49061c555 Reviewed-on: https://go-review.googlesource.com/24431Reviewed-by:
Alan Donovan <adonovan@google.com> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
David Crawshaw authored
The encoding/json package uses NumMethod()==0 as a fast check for interface satisfaction. In the case when a type has no methods at all, we don't need to grab the RWMutex. Improves JSON decoding benchmark on linux/amd64: name old time/op new time/op delta CodeDecoder-8 44.2ms ± 2% 40.6ms ± 1% -8.11% (p=0.000 n=10+10) name old speed new speed delta CodeDecoder-8 43.9MB/s ± 2% 47.8MB/s ± 1% +8.82% (p=0.000 n=10+10) For #16117 Change-Id: Id717e7fcd2f41b7d51d50c26ac167af45bae3747 Reviewed-on: https://go-review.googlesource.com/24433Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Add Aaron Zinman (corporate CLA for Empirical Interfaces Inc.) Add Ayanamist Yang (individual CLA) Add Christian Couder (individual CLA) Add Eric Engestrom (individual CLA) Add Filippo Valsorda (individual CLA) Add Gyu-Ho Lee (individual CLA) Add H. İbrahim Güngör (individual CLA) Add Jacob Hoffman-Andrews (individual CLA) Add Jason Barnett (individual CLA) Add Joe Farrell (individual CLA) Add Julian Kornberger (individual CLA) Add Kris Rousey (corporate CLA for Google Inc.) Add Miguel Mendez (individual CLA) Add Nic Day (individual CLA) Add Paulo Casaretto (individual CLA) Add Philip Børgesen (individual CLA) Add Quan Tran (individual CLA) Add Sai Cheemalapati (corporate CLA for Google Inc.) Add Sasha Sobol (individual CLA) Add Seth Vargo (individual CLA) Add Simon Thulbourn (individual CLA) Add Wisdom Omuya (individual CLA) Updates #12042 Change-Id: Ie8ab5e3500ee62000c0b176d4d71340446e72ab7 Reviewed-on: https://go-review.googlesource.com/24420Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
- 23 Jun, 2016 6 commits
-
-
David Crawshaw authored
Improves JSON decoding on linux/amd64. name old time/op new time/op delta CodeUnmarshal-40 89.3ms ± 2% 86.3ms ± 2% -3.31% (p=0.000 n=22+22) name old speed new speed delta CodeUnmarshal-40 21.7MB/s ± 2% 22.5MB/s ± 2% +3.44% (p=0.000 n=22+22) Updates #16117 Change-Id: I52acf31d7729400cfe6693e46292d41e1addba3d Reviewed-on: https://go-review.googlesource.com/24410 Run-TryBot: David Crawshaw <crawshaw@golang.org> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
David Crawshaw authored
This was removed in CL 19695 but it slows down reflect.New, which ends up on the hot path of things like JSON decoding. There is no immediate cost in binary size, but it will make it harder to further shrink run time type information in Go 1.8. Before BenchmarkNew-40 30000000 36.3 ns/op After BenchmarkNew-40 50000000 29.5 ns/op Fixes #16161 Updates #16117 Change-Id: If7cb7f3e745d44678f3f5cf3a5338c59847529d2 Reviewed-on: https://go-review.googlesource.com/24400Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
Since at least 1.0.3, the testing package has said that logs are dumped to standard error, but has in fact dumped the logs to standard output. We could change to dump to standard error, but after doing it this way for so long I think it's better to change the docs. Fixes #16138. Change-Id: If39c7ce91f51c7113f33ebabfb8f84fd4611b9e1 Reviewed-on: https://go-review.googlesource.com/24311 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
Ian Lance Taylor authored
Fixes #16148. Change-Id: Ifab773e986b768602476824d005eea9200761236 Reviewed-on: https://go-review.googlesource.com/24327 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
Ian Lance Taylor authored
I tried simply increasing the size of the slice but then I got an error because NSTATES was too small. Leaving a real fix for after 1.7. Update #16144. Change-Id: I8676772cb79845dd4ca1619977d4d54a2ce6de59 Reviewed-on: https://go-review.googlesource.com/24321 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
Keith Randall authored
MOVB $1, (AX) was being disassembled as MOVL $1, (AX). Use the memory size to override the standard size. Fix the tests. Fixes #15922 Change-Id: If92fe74c33a21e5427c8c5cc97dd15e087edb860 Reviewed-on: https://go-review.googlesource.com/23608Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 22 Jun, 2016 5 commits
-
-
Michael Munday authored
Add Bill O'Farrell (corporate CLA for IBM) Add Karan Dhiman (corporate CLA for IBM) Add Sam Ding (corporate CLA for IBM) Add Tristan Amini (corporate CLA for IBM) Add Yu Heng Zhang (corporate CLA for IBM) Add Yu Xuan Zhang (corporate CLA for IBM) Change-Id: I9ab15e33954afc2c208fc2e420a72c5a4d865f9b Reviewed-on: https://go-review.googlesource.com/24350Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Alan Donovan authored
Change-Id: Ib285c02e240f02e9d5511bd448163ec1d4e75516 Reviewed-on: https://go-review.googlesource.com/24323Reviewed-by:
Rob Pike <r@golang.org>
-
Alan Donovan authored
Fixes issue 16143 Change-Id: Id9d257aee54d31fbf0d478cb07339729cd9712c0 Reviewed-on: https://go-review.googlesource.com/24325Reviewed-by:
Rob Pike <r@golang.org>
-
Robert Griesemer authored
This is a regression from 1.6. The respective code in importimport (export.go) was not exactly replicated with the new importer. Also copied over the missing cyclic import check. Added test cases. Fixes #16133. Change-Id: I1e0a39ff1275ca62a8054874294d400ed83fb26a Reviewed-on: https://go-review.googlesource.com/24312Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Robert Griesemer <gri@golang.org>
-
Robert Griesemer authored
If -s is specified, each file is considered a separate package even if multiple files have the same package names. For instance, the action and flag "errorcheckdir -s" will compile all files in the respective directory as individual packages. Change-Id: Ic5c2f9e915a669433f66c2d3fe0ac068227a502f Reviewed-on: https://go-review.googlesource.com/24313 Run-TryBot: Robert Griesemer <gri@golang.org> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
- 21 Jun, 2016 6 commits
-
-
Alan Donovan authored
Change-Id: Ie1c95fd0869307551bfcf76bf45c13372723fbba Reviewed-on: https://go-review.googlesource.com/24288Reviewed-by:
Rob Pike <r@golang.org>
-
Alan Donovan authored
The cfg subpackage builds a control flow graph of ast.Nodes. The lostcancel module checks this graph to find paths, from a call to WithCancel to a return statement, on which the cancel variable is not used. (A trivial case is simply assigning the cancel result to the blank identifier.) In a sample of 50,000 source files, the new check found 2068 blank assignments and 118 return-before-cancel errors. I manually inspected 20 of the latter and didn't find a single false positive among them. Change-Id: I84cd49445f9f8d04908b04881eb1496a96611205 Reviewed-on: https://go-review.googlesource.com/24150Reviewed-by:
Robert Griesemer <gri@golang.org> Reviewed-by:
Rob Pike <r@golang.org>
-
qeed authored
Fixes #16116. Change-Id: Ic3cb0b95382bb683368743bda49b4eb5fdcc35c0 Reviewed-on: https://go-review.googlesource.com/24286Reviewed-by:
Emmanuel Odeke <emm.odeke@gmail.com> Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Rob Pike authored
Fixes #16105. Change-Id: I94467f2adf861eb38f3119ad30d46a87456d5305 Reviewed-on: https://go-review.googlesource.com/24281Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
Ian Lance Taylor authored
The test is in the runtime package because there are other tests of pprof there. At some point we should probably move them all into a pprof testsuite. Fixes #16128. Change-Id: Ieefa40c61cf3edde11fe0cf04da1debfd8b3d7c0 Reviewed-on: https://go-review.googlesource.com/24274 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
Ian Lance Taylor authored
A straight conversion from a type T to an interface type I, where T does not implement I, should always panic with an interface conversion error that shows the missing method. This was not happening if the conversion was done once using the comma-ok form (the result would not be OK) and then again in a straight conversion. Due to an error in the runtime package the second conversion was failing with a nil pointer dereference. Fixes #16130. Change-Id: I8b9fca0f1bb635a6181b8b76de8c2385bb7ac2d2 Reviewed-on: https://go-review.googlesource.com/24284 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by:
Michel Lespinasse <walken@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Andrew Gerrand <adg@golang.org> Reviewed-by:
Keith Randall <khr@golang.org>
-
- 20 Jun, 2016 6 commits
-
-
Ian Lance Taylor authored
Fixes #16121. Change-Id: I7b838fb6fb9f098e6c348d67379fdc81fb0d69a4 Reviewed-on: https://go-review.googlesource.com/24270 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Michael Hudson-Doyle <michael.hudson@canonical.com>
-
Andrew Gerrand authored
Fixes #16120 Change-Id: Ia352558231e00baab5c698e93d7267564c07ec0c Reviewed-on: https://go-review.googlesource.com/24242Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Andrew Gerrand <adg@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
Change-Id: I2a5353203ca2958fa37fc7a5ea3f22ad4fc62b0e Reviewed-on: https://go-review.googlesource.com/24282 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
David Chase <drchase@google.com>
-
Andrew Gerrand authored
Fixes #16099 Change-Id: I334c1f04dfc98c4a07e33745819d890b5fcb1673 Reviewed-on: https://go-review.googlesource.com/24243Reviewed-by:
Josh Bleecher Snyder <josharian@gmail.com>
-
Mikio Hara authored
Change-Id: Ia978c10a97e4c24fd7cf1fa4a7c3bd886d20bbf8 Reviewed-on: https://go-review.googlesource.com/24241Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
Emmanuel Odeke authored
- Mention RFC 2616 conformation in which the server now only sends one "Transfer-Encoding" header when "chunked" is explicitly set. - Mention that a timeout handler now sends a 200 status code on encountering an empty response body instead of sending back 0. Change-Id: Id45e2867390f7e679ab40d7a66db1f7b9d92ce17 Reviewed-on: https://go-review.googlesource.com/24250Reviewed-by:
Andrew Gerrand <adg@golang.org>
-
- 19 Jun, 2016 1 commit
-
-
Alex Brainman authored
pecoff.doc (https://goo.gl/ayvckk) in section 5.6 says: Immediately following the COFF symbol table is the COFF string table. The position of this table is found by taking the symbol table address in the COFF header, and adding the number of symbols multiplied by the size of a symbol. So it is unclear what to do when symbol table address is 0. Lets assume executable does not have any string table. Added new test with executable with no symbol table. The gcc -s testdata\hello.c -o testdata\gcc-386-mingw-no-symbols-exec. command was used to generate the executable. Fixes #16084 Change-Id: Ie74137ac64b15daadd28e1f0315f3b62d1bf2059 Reviewed-on: https://go-review.googlesource.com/24200Reviewed-by:
Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 17 Jun, 2016 2 commits
-
-
Michael Munday authored
Use the same technique as mips64 for these casts (CL 22835). We could use the FCFIDU instruction for ppc64le however it seems better to keep it the same as ppc64 for now. Updates #15539, updates #16004. Change-Id: I550680e485327568bf3238c4615a6cc8de6438d7 Reviewed-on: https://go-review.googlesource.com/24191Reviewed-by:
David Chase <drchase@google.com> Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Austin Clements authored
We haven't used poisonStack since we switched to 1-bit stack maps (4d0f3a1c), but the checks are still there. However, nothing prevents us from genuinely allocating an object at this address on 32-bit and causing the runtime to crash claiming that it's found a bad pointer. Since we're not using poisonStack anyway, just pull it out. Fixes #15831. Change-Id: Ia6ef604675b8433f75045e369f5acd4644a5bb38 Reviewed-on: https://go-review.googlesource.com/24211 Run-TryBot: Austin Clements <austin@google.com> Reviewed-by:
Keith Randall <khr@golang.org>
-
- 16 Jun, 2016 2 commits
-
-
Austin Clements authored
Change-Id: I6ef08f6078190dc9df0b2df4f26a76456602f5e8 Reviewed-on: https://go-review.googlesource.com/24176Reviewed-by:
Rick Hudson <rlh@golang.org>
-
Austin Clements authored
Currently zosarch.go is written out in non-deterministic map order. Sort the keys and write it out in sorted order to make the generated file contents deterministic. Change-Id: Id490f0e8665a2c619c5a7a00a30f4fc64f333258 Reviewed-on: https://go-review.googlesource.com/24174 Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Robert Griesemer <gri@golang.org> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-