- 03 Nov, 2016 17 commits
-
-
Quentin Smith authored
OpenBSD's scheduler causes preemption to take 20+ms, so 30ms is not enough time for 3 goroutines to run. This change continues to sleep for 30ms, but if it finds that the 3 goroutines have not run, it sleeps for an additional 1s before declaring failure. Updates #17712 Change-Id: I3e886e40d05192b7cb71b4f242af195836ef62a8 Reviewed-on: https://go-review.googlesource.com/32634Reviewed-by:
Rick Hudson <rlh@golang.org> Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
Some of these whitelist entries could be eliminated, e.g. by the addition of Go declarations, but this is a start. Change-Id: I2fb3234cf05ebc6b161aacac2d4c15d810d50527 Reviewed-on: https://go-review.googlesource.com/32671Reviewed-by:
Michael Munday <munday@ca.ibm.com> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Josh Bleecher Snyder authored
Found by vet. Change-Id: I1d78454facdd3522509ecfe7c73b21c4602ced8a Reviewed-on: https://go-review.googlesource.com/32670 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Michael Munday <munday@ca.ibm.com>
-
Josh Bleecher Snyder authored
No functional changes. Change-Id: Ibf592c04be506a76577d48574e84ab20c3238b49 Reviewed-on: https://go-review.googlesource.com/32589 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Michael Munday <munday@ca.ibm.com>
-
Mohit Agarwal authored
Follow-up to CL 32114 Change-Id: I75247ed9c1c0a0e8a278eb75a60d4c5bee355409 Reviewed-on: https://go-review.googlesource.com/32690Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Russ Cox authored
Fixes #15877. Change-Id: Ia1e327c0cea3be43e5f8ba637c97c223cee4bb5a Reviewed-on: https://go-review.googlesource.com/32643 TryBot-Result: Gobot Gobot <gobot@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Russ Cox authored
The original go tool pprof (written in Perl) got this right. The Go rewrite never has, but should. Change-Id: Ie1fc571214c61b1b5654a0bc90e15eb889adf059 Reviewed-on: https://go-review.googlesource.com/32617 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
David Crawshaw authored
The exported symbol for a plugin can be the only reference to a type in a program. In particular, "var F func()" will have the type *func(), which is uncommon. Fixes #17140 Change-Id: Ide2104edbf087565f5377374057ae54e0c00c57e Reviewed-on: https://go-review.googlesource.com/29692 Run-TryBot: David Crawshaw <crawshaw@golang.org> Reviewed-by:
Russ Cox <rsc@golang.org>
-
David du Colombier authored
Since Dial(":80") was implemented on Plan 9 (CL 32593), TestProtocolDialError is failing because dialing a port superior to 65535 is supported on Plan 9. This change disallows dialing and listening on ports superior to 65535. Fixes #17761. Change-Id: I95e8a163eeacf1ccd8ece7b650f16a0531c59709 Reviewed-on: https://go-review.googlesource.com/32594Reviewed-by:
Russ Cox <rsc@golang.org>
-
David du Colombier authored
CL 32101 fixed Dial(":80") on Windows and added TestDialLocal, which was failing on Plan 9, because it wasn't implemented on Plan 9. This change implements Dial(":80") by connecting to 127.0.0.1 or ::1 (depending on network), so it works as documented. Fixes #17760. Change-Id: If0ff769299e09bebce11fc3708639c1d8c96c280 Reviewed-on: https://go-review.googlesource.com/32593Reviewed-by:
Russ Cox <rsc@golang.org>
-
Josh Bleecher Snyder authored
Fixes #17755 Change-Id: I1ad1edc382b1312d992963054eb82648cb5112d2 Reviewed-on: https://go-review.googlesource.com/32588 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Russ Cox <rsc@golang.org>
-
Ilya Tocar authored
Generate bswap+load/store for reading/writing big endian data. Helps encoding/binary. name old time/op new time/op delta ReadSlice1000Int32s-8 5.06µs ± 8% 4.58µs ± 8% -9.50% (p=0.000 n=10+10) ReadStruct-8 1.07µs ± 0% 1.05µs ± 0% -1.51% (p=0.000 n=9+10) ReadInts-8 367ns ± 0% 363ns ± 0% -1.15% (p=0.000 n=8+9) WriteInts-8 475ns ± 1% 469ns ± 0% -1.45% (p=0.000 n=10+10) WriteSlice1000Int32s-8 5.03µs ± 3% 4.50µs ± 3% -10.45% (p=0.000 n=9+9) PutUvarint32-8 17.2ns ± 0% 17.2ns ± 0% ~ (all samples are equal) PutUvarint64-8 46.7ns ± 0% 46.7ns ± 0% ~ (p=0.509 n=10+10) name old speed new speed delta ReadSlice1000Int32s-8 791MB/s ± 8% 875MB/s ± 8% +10.53% (p=0.000 n=10+10) ReadStruct-8 70.0MB/s ± 0% 71.1MB/s ± 0% +1.54% (p=0.000 n=9+10) ReadInts-8 81.6MB/s ± 0% 82.6MB/s ± 0% +1.21% (p=0.000 n=9+9) WriteInts-8 63.0MB/s ± 1% 63.9MB/s ± 0% +1.45% (p=0.000 n=10+10) WriteSlice1000Int32s-8 796MB/s ± 4% 888MB/s ± 3% +11.65% (p=0.000 n=9+9) PutUvarint32-8 233MB/s ± 0% 233MB/s ± 0% ~ (p=0.089 n=10+10) PutUvarint64-8 171MB/s ± 0% 171MB/s ± 0% ~ (p=0.137 n=10+9) Change-Id: Ia2dbdef92198eaa7e2af5443a8ed586d4b401ffb Reviewed-on: https://go-review.googlesource.com/32222 Run-TryBot: Ilya Tocar <ilya.tocar@intel.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Keith Randall <khr@golang.org>
-
Josh Bleecher Snyder authored
Follow-up to CL 32551. Change-Id: If68f9581a7f13e04796aaff2007c09f8ea2c3611 Reviewed-on: https://go-review.googlesource.com/32586 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Keith Randall <khr@golang.org>
-
Hiroshi Ioka authored
The old code cannot handle unexported fields, it panics. The new code returns error instead. Fixes #17462 Change-Id: I927fc46b21d60e86cb52e84c65f2122f9159b21d Reviewed-on: https://go-review.googlesource.com/31540 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by:
Russ Cox <rsc@golang.org>
-
Brad Fitzpatrick authored
Fixes #17754 Updates #9478 (details in here) Change-Id: Iae2c1ca05a18ed266b53b2594c22fc57fab33c5e Reviewed-on: https://go-review.googlesource.com/32587 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Josh Bleecher Snyder authored
TestAssembly takes 20s on my machine, which is too slow for normal operation. Marking as -short has its dangers (#17472), but hopefully we'll soon have a builder for that. All the SSA tests are hermetic and not time sensitive and can thus be run in parallel. Reduces the cmd/compile/internal/gc test time during all.bash on my laptop from 42s to 7s. Updates #17751 Change-Id: Idd876421db23b9fa3475e8a9b3355a5dc92a5a29 Reviewed-on: https://go-review.googlesource.com/32585 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Brad Fitzpatrick authored
Updates http2 to x/net/http2 git rev 569280fa for: http2: fix over-aggressive ignoring of frames while in "go away" mode https://golang.org/cl/32583 Fixes #17733 Change-Id: I4008d2e14ce89782ce7e18b441b1181f98623b9d Reviewed-on: https://go-review.googlesource.com/32584 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by:
David Crawshaw <crawshaw@golang.org>
-
- 02 Nov, 2016 19 commits
-
-
Robert Griesemer authored
Change-Id: I4b035b3539c98e5b1442d1009d457cbc199b42ee Reviewed-on: https://go-review.googlesource.com/32637Reviewed-by:
Matthew Dempsky <mdempsky@google.com>
-
Michael Munday authored
Adapted from the mips64 test case. Fixes #17745. Change-Id: I46f0900028adb936dcab2cdc701ea11d0a3cb95e Reviewed-on: https://go-review.googlesource.com/32611 Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
David Chase <drchase@google.com> Reviewed-by:
Rob Pike <r@golang.org>
-
Keith Randall authored
when compiling f(a, b, c), we do something like: *(SP+0) = eval(a) *(SP+8) = eval(b) *(SP+16) = eval(c) call f If one of those evaluations is later determined to unconditionally panic (say eval(b) in this example), then the call is deadcode eliminated. But any previous argument write (*(SP+0)=... here) is still around. Becuase we only compute the size of the outarg area for calls which are still around at the end of optimization, the space needed for *(SP+0)=v is not accounted for and thus the outarg area may be too small. The fix is to make sure that we evaluate any potentially panicing operation before we write any of the args to the stack. It turns out that fix is pretty easy, as we already have such a mechanism available for function args. We just need to extend it to possibly panicing args as well. The resulting code (if b and c can panic, but a can't) is: tmpb = eval(b) *(SP+16) = eval(c) *(SP+0) = eval(a) *(SP+8) = tmpb call f This change tickled a bug in how we find the arguments for intrinsic calls, so that latent bug is fixed up as well. Update #16760. Change-Id: I0bf5edf370220f82bc036cf2085ecc24f356d166 Reviewed-on: https://go-review.googlesource.com/32551Reviewed-by:
Cherry Zhang <cherryyz@google.com>
-
Keith Randall authored
The code to do the conversion is smaller than the call to the runtime. The 1-result asserts need to call panic if they fail, but that code is out of line. The only conversions left in the runtime are those which might allocate and those which might need to generate an itab. Given the following types: type E interface{} type I interface { foo() } type I2 iterface { foo(); bar() } type Big [10]int func (b Big) foo() { ... } This CL inlines the following conversions: was assertE2T var e E = ... b := i.(Big) was assertE2T2 var e E = ... b, ok := i.(Big) was assertI2T var i I = ... b := i.(Big) was assertI2T2 var i I = ... b, ok := i.(Big) was assertI2E var i I = ... e := i.(E) was assertI2E2 var i I = ... e, ok := i.(E) These are the remaining runtime calls: convT2E: var b Big = ... var e E = b convT2I: var b Big = ... var i I = b convI2I: var i2 I2 = ... var i I = i2 assertE2I: var e E = ... i := e.(I) assertE2I2: var e E = ... i, ok := e.(I) assertI2I: var i I = ... i2 := i.(I2) assertI2I2: var i I = ... i2, ok := i.(I2) Fixes #17405 Fixes #8422 Change-Id: Ida2367bf8ce3cd2c6bb599a1814f1d275afabe21 Reviewed-on: https://go-review.googlesource.com/32313 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by:
David Chase <drchase@google.com>
-
Keith Randall authored
We generate an OpKeepAlive for the idata portion of the interface for a runtime.KeepAlive call. But given such an op, we need to keep the entire containing variable alive, not just the range that was passed to the OpKeepAlive operation. Fixes #17710 Change-Id: I90de66ec8065e22fb09bcf9722999ddda289ae6e Reviewed-on: https://go-review.googlesource.com/32477 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by:
Joe Tsai <thebrokentoaster@gmail.com>
-
Brad Fitzpatrick authored
Update bundled x/net/http2 to x/net git rev 6c4ac8bd for: http2: fix Transport race sending RST_STREAM while reading DATA on cancels https://golang.org/cl/32571 http2: remove h2-14 ALPN proto https://golang.org/cl/32576 Fixes #16974 Change-Id: I6ff8493a13d2641499fedf33e8005004735352ff Reviewed-on: https://go-review.googlesource.com/32578 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Joe Tsai authored
The proper fix for the Writer is too involved to be done in time for Go 1.8. Instead, we do a localized fix that simply disables the prefix encoding logic. While this will prevent some legitimate uses of prefix, it will ensure that we don't keep outputting invalid GNU format files that have the prefix field populated. For headers with long filenames that could have used the prefix field, they will be promoted to use the PAX format, which ensures that we will still be able to encode all headers that we were able to do before. Updates #12594 Fixes #17630 Fixes #9683 Change-Id: Ia97b524ac69865390e2ae8bb0dfb664d40a05add Reviewed-on: https://go-review.googlesource.com/32234Reviewed-by:
Russ Cox <rsc@golang.org> Run-TryBot: Joe Tsai <thebrokentoaster@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Michael Munday authored
Test adapted from the mips64 test. Fixes #15454. Change-Id: If890c2d18a4a03a08faaa2e674edd7223af60290 Reviewed-on: https://go-review.googlesource.com/22472 Run-TryBot: Michael Munday <munday@ca.ibm.com> Reviewed-by:
Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Matthew Dempsky authored
Instead of writing out the original object for each alias, ensure we export the original object before any aliases. This allows the aliases to simply refer back to the original object by qualified name. Fixes #17636. Change-Id: If80fa8c66b8fee8344a00b55d25a8aef22abd859 Reviewed-on: https://go-review.googlesource.com/32575 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Robert Griesemer <gri@golang.org> Reviewed-by:
Alan Donovan <adonovan@google.com>
-
Russ Cox authored
Windows sockets allow bind to 0.0.0.0:80 but not connect to it. To make Listen(":80") / Dial(":80") work as documented on Windows, connect to 127.0.0.1 or ::1 (depending on network) in place of 0.0.0.0. Fixes #6290. Change-Id: Ia27537067276871648546678fbe0f1b8478329fe Reviewed-on: https://go-review.googlesource.com/32101 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Mikio Hara <mikioh.mikioh@gmail.com>
-
Russ Cox authored
Currently, we don't have package testing to import package regexp directly, because then regexp can't have internal tests (or at least they become more difficult to write), for fear of an import cycle. The solution we've been using is for the generated test main package (pseudo-import path "testmain", package main) to import regexp and pass in a matchString function for use by testing when implementing the -run flags. This lets testing use regexp but without depending on regexp and creating unnecessary cycles. We want to add a few dependencies to runtime/pprof, notably regexp but also compress/gzip, without causing those packages to have to work hard to write internal tests. Restructure the (dare I say it) dependency injection of regexp.MatchString to be more general, and use it for the runtime/pprof functionality in addition to the regexp functionality. The new package testing/internal/testdeps is the root for the testing dependencies handled this way. Code using testing.MainStart will have to change from passing in a matchString implementation to passing in testdeps.TestDeps{}. Users of 'go test' don't do this, but other build systems that have recreated 'go test' (for example, Blaze/Bazel) may need to be updated. The new testdeps setup should make future updates unnecessary, but even so we keep the comment about MainStart not being subject to Go 1 compatibility. Change-Id: Iec821d2afde10c79f95f3b23de5e71b219f47b92 Reviewed-on: https://go-review.googlesource.com/32455Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Russ Cox authored
Make it easier to find lines and update the file. Change-Id: I9db78ffd7316fbc17c5488e178e23777756d8f47 Reviewed-on: https://go-review.googlesource.com/32454 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Russ Cox authored
CL 21870 moved the entire cmd/pprof/internal directory to cmd/internal/pprof for use by cmd/trace, but really cmd/trace only needed cmd/pprof/internal/profile, which became cmd/internal/pprof/profile, and then internal/pprof/profile. Move the rest back under cmd/pprof so that it is clear that no other code is reaching into the guts of cmd/pprof. Just like functions should not be exported unless necessary, internals should not be made visible to more code than necessary. Raúl Silvera noted after the commit of CL 21870 that only the profile package should have moved, but there was no followup fix (until now). Change-Id: I603f4dcb0616df1e5d5eb7372e6fccda57e05079 Reviewed-on: https://go-review.googlesource.com/32453 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Ian Lance Taylor <iant@golang.org>
-
Russ Cox authored
This allows both the runtime and the cmd/pprof code to use the package, just like we do for internal/trace. Change-Id: I7606977284e1def36c9647354c58e7c1e93dba6b Reviewed-on: https://go-review.googlesource.com/32452 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Munday authored
Updates the s390x-specific files in these packages with the changes to the amd64-specific files made during the review of CL 31690. I'd like to keep these files in sync unless there is a reason to diverge. Change-Id: Id83e5ce11a45f877bdcc991d02b14416d1a2d8d2 Reviewed-on: https://go-review.googlesource.com/32574Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Jan Mercl authored
Change-Id: I436528a4f81634448a60b1183d1b65a3bf4f48c1 Reviewed-on: https://go-review.googlesource.com/32590Reviewed-by:
Josh Bleecher Snyder <josharian@gmail.com>
-
David Crawshaw authored
Change-Id: I174d7307bfdd8ec57bb4266dab8569fd2234abb4 Reviewed-on: https://go-review.googlesource.com/32610Reviewed-by:
Austin Clements <austin@google.com> Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
SWIG generates cgo input files in the work directory. When those files are passed directly to cgo, cgo generates long file names that include the object directory (with slashes replaced by underscores). Instead, use cgo's new -srcdir option to give it short file names. When using both SWIG and cgo, copy the cgo files into the object directory first. Use a shorter object file name when compiling the C file generated by SWIG. Fixes #17070. Change-Id: Ic558603f1731636d9999f3130ad0224b24bd7dcb Reviewed-on: https://go-review.googlesource.com/32485 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by:
David Crawshaw <crawshaw@golang.org>
-
Alex Brainman authored
Updates #13451 Change-Id: I2c3c66d9532c16e616c476e2afe31b3ddc0a8d79 Reviewed-on: https://go-review.googlesource.com/32371Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
-
- 01 Nov, 2016 4 commits
-
-
Brad Fitzpatrick authored
Automated update after manual classification using x/build/cmd/writenotes. Change-Id: Ie92f501d301c1e2245954439da197812c09c1684 Reviewed-on: https://go-review.googlesource.com/32570Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
In a function argument, we handle a typedef for a pointer specially, using the pointer type rather than the typedef, to permit the Go calls to match the laxer type conversions permitted in C. We record the typedef so that we use that type in the C code, in case it has a special attribute. However, using the typedef is wrong when using a pointer to a basic type, because the C code may sometimes use the typedef and sometimes not, and using the typedef in all cases will cause incorrect type errors on the Go side. Fortunately we only really need to use the typedef when pointing to a struct/union/class, and in such a case confusion is unlikely. Fixes #17723. Change-Id: Id2eaeb156faeaf2e8eb9cf0b8f95b44caf8cfbd2 Reviewed-on: https://go-review.googlesource.com/32536 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by:
David Crawshaw <crawshaw@golang.org>
-
Matthew Dempsky authored
It's never set anywhere, and even if it was, it would just Fatalf. Change-Id: I84ade6d2068c623a8c85f84d8cdce38984996ddd Reviewed-on: https://go-review.googlesource.com/32489 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
-
Robert Griesemer authored
Before aliases, and because we chose a simple export format for them, a package may now export the same object more than once if there are multiple exported aliases referring to that object. The go/importer made the assumption this couldn't happen. Adjust it. Fixes #17726. Change-Id: Ibb9fc669a8748200b45ad78934d7453e5a5aad82 Reviewed-on: https://go-review.googlesource.com/32538Reviewed-by:
Matthew Dempsky <mdempsky@google.com> Run-TryBot: Robert Griesemer <gri@golang.org>
-