- 28 Jun, 2016 3 commits
-
-
Lynn Boger authored
This modifies a recent performance improvement to the And8 and Or8 atomic functions which required both ppc64le and ppc64 to use power8 instructions. Since then it was decided that ppc64 (BE) should work for power5 and later. This change uses instructions compatible with power5 for ppc64 and uses power8 for ppc64le. Fixes #16004 Change-Id: I623c75e8e6fd1fa063a53d250d86cdc9d0890dc7 Reviewed-on: https://go-review.googlesource.com/24181Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: Andrew Gerrand <adg@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Raul Silvera authored
The version of pprof in gperftools has been deprecated. No need to have a pointer to that version since go tool pprof is included with the Go distro. Change-Id: I6d769a68f64280f5db89ff6fbc67bfea9c8f1526 Reviewed-on: https://go-review.googlesource.com/24509Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Crawshaw authored
On linux/386 compared to tip: name old time/op new time/op delta DecodeInterfaceSlice-40 1.23ms ± 1% 1.17ms ± 1% -4.93% (p=0.000 n=9+10) Recovers about half the performance regression from Go 1.6 on 386. For #16117. Change-Id: Ie8676d92a4da3e27ff21b91a98b3e13d16730ba1 Reviewed-on: https://go-review.googlesource.com/24468Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 27 Jun, 2016 10 commits
-
-
Dmitri Popov authored
Do not throw away the rest of Int63 value used for generation random bytes. Save it in Rand struct and re-use during the next Read call. Fixes #16124 Change-Id: Ic70bd80c3c3a6590e60ac615e8b3c2324589bea3 Reviewed-on: https://go-review.googlesource.com/24251Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com> Run-TryBot: Joe Tsai <thebrokentoaster@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Vladimir Mihailenco authored
Fixes #16162. Change-Id: I6f4ae906630079ef5fc29ee5f70e2e3d1c962170 Reviewed-on: https://go-review.googlesource.com/24390Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
This fixes some 40 warnings from go vet. Fixes #16134. Change-Id: Ib9fcba275fe692f027a2a07b581c8cf503b11087 Reviewed-on: https://go-review.googlesource.com/24287Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org>
-
Konstantin Shaposhnikov authored
Change ExampleResponseRecorder to use httptest.NewRequest instead of http.NewRequest. This makes the example shorter and shows how to use one more function from the httptest package. Change-Id: I3d35869bd0a4daf1c7551b649428bb2f2a45eba2 Reviewed-on: https://go-review.googlesource.com/24480 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Brad Fitzpatrick authored
Fixes #16197 Change-Id: Icaabacbb22bc18c52b9e04b47385ac5325fcccd1 Reviewed-on: https://go-review.googlesource.com/24505 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
The compiler was treating all global function literals as occurring in a function named "glob", which caused a symbol name collision when there was an actual function named "glob". Fixed by adding a period. Fixes #16193. Change-Id: I67792901a8ca04635ba41d172bfaee99944f594d Reviewed-on: https://go-review.googlesource.com/24500Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Raul Silvera authored
In the comments for this file there is a reference to gperftools for more info on pprof. pprof now live on its own repo on github, and the version in gperftools is deprecated. Change-Id: I8a188f129534f73edd132ef4e5a2d566e69df7e9 Reviewed-on: https://go-review.googlesource.com/24502Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
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 1 commit
-
-
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>
-