- 23 Aug, 2016 9 commits
-
-
Josh Bleecher Snyder authored
This sort is now only reachable for constant clauses for a non-interface switch expression value. Refactor a bit so that the few tests that remain are concise and easy to read. Add a test that string length takes priority over built-in string order. Change-Id: Iedaa11ff77049d5ad1bf14f54cbb8c3411d589a7 Reviewed-on: https://go-review.googlesource.com/26767 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
This is simpler than the sorting technique. It also allows us to simplify or eliminate some of the sorting decisions. Most important, sorting will not work when case clauses represent ranges of integers: There is no correct sort order that allows overlap detection by comparing neighbors. Using a map allows of a cheap, simple approach to ranges, namely to insert every int in the map. The equivalent approach for sorting means juggling temporary Nodes for every int, which is a lot more expensive. Change-Id: I84df3cb805992a1b04d14e0e4b2334f943e0ce05 Reviewed-on: https://go-review.googlesource.com/26766 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
The implementations are going to start diverging more. Instead of more if clauses and empty parameters, specialize. Change-Id: I44584450592e8c9f72a10d8ada859c07e9d9aa19 Reviewed-on: https://go-review.googlesource.com/26764 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
We used to have separate kinds for the default case and the nil type case. Now that those are gone, we can use a simple bool instead. Change-Id: I65488e945df68178e893cddd2e091ebb6e32ef4d Reviewed-on: https://go-review.googlesource.com/26763 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
Switch lowering splits each case expression out into its own OCASE node. Change-Id: Ifcb72b99975ed36da8540f6e43343e9aa2058572 Reviewed-on: https://go-review.googlesource.com/26769 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
This is a bit simpler than playing sorting games, and it is clearer that it generates errors in the correct (source) order. It also allows us to simplify sorting. It also prevents quadratic error messages for (pathological) inputs with many duplicate type cases. While we’re here, refactoring deduping into separate functions. Negligible compilebench impact. Fixes #15912. Change-Id: I6cc19edd38875389a70ccbdbdf0d9b7d5ac5946f Reviewed-on: https://go-review.googlesource.com/26762 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
Change-Id: If443ffb50b140c466dcf4cc5340f44948bfa46a9 Reviewed-on: https://go-review.googlesource.com/26765Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Dhaivat Pandit authored
example for httptest.Recorder was inspecting Recoder directly. Using Result() to convert Recorder into a http.Response yields a much better user experience. Closes #16837 Change-Id: Id0e636c12cd6adb1ba11f89953ff2b0f43758cf3 Reviewed-on: https://go-review.googlesource.com/27495Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
CL 27473 accidentally changed `!Debug['I']` to `*flagInterpreter != ""`. Since the old `Debug['I']` was set when the new *flagInterpreter was set, this inverted the sense of the condition. The effect was to always ignore the cgo_dynamic_interpreter setting from runtime/cgo. This worked OK when the default interpreter was the correct one, but failed when it was not, as is currently the case on, at least, PPC64 and ARM. This CL restores the old behavior by using a separate variable to track whether the -I flag was used, just as we used to. Change-Id: Icf9b65fa41349ed2e4de477fec0a557ef1eb8189 Reviewed-on: https://go-review.googlesource.com/27562 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 22 Aug, 2016 27 commits
-
-
Michael Matloob authored
My flags change reversed the meaning of -s within mips64's linker code. This should fix that. Change-Id: Ia24002469e557fb29badfd830134e61c1dd7e16e Reviewed-on: https://go-review.googlesource.com/27555Reviewed-by: Minux Ma <minux@golang.org>
-
Robert Griesemer authored
Replace ad-hoc encoding of export version info with a more systematic approach. Continue to read (but not write) the Go1.7 format for backward- compatibility. This will avoid spurious errors with old installed packages. Fixes #16244. Change-Id: I945e79ffd5e22b883250f6f9fac218370c2505a2 Reviewed-on: https://go-review.googlesource.com/27452Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Brad Fitzpatrick authored
Updates #16795 Change-Id: I0bcc34bb5a92a2c480aebfb0eb6ba57bcc7f7cfd Reviewed-on: https://go-review.googlesource.com/27551Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Lynn Boger authored
This adds some additional rules to improve loads and stores for ppc64x. Change-Id: I96b99c3a0019e6ac5393910c086f58330a04fc5a Reviewed-on: https://go-review.googlesource.com/27354 Run-TryBot: David Chase <drchase@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
-
Josh Bleecher Snyder authored
Rather than juggle default and nil cases as part of a slice, handle them explicitly. Change-Id: I97b200c9d3f23fe1a438acdbf3d13b0cf7e0851e Reviewed-on: https://go-review.googlesource.com/26761 TryBot-Result: Gobot Gobot <gobot@golang.org> Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
Fixes #15911. Change-Id: I500533484de61aa09abe4cecb010445e3176324e Reviewed-on: https://go-review.googlesource.com/26760 TryBot-Result: Gobot Gobot <gobot@golang.org> Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Josh Bleecher Snyder authored
Change-Id: Iacedb792c73591b7fd75e836aab8e0e117c8e738 Reviewed-on: https://go-review.googlesource.com/27494 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Josh Bleecher Snyder authored
Found by vet. Updates #11041 Change-Id: I5217b3e20c6af435d7500d6bb487b9895efe6605 Reviewed-on: https://go-review.googlesource.com/27493 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Josh Bleecher Snyder authored
Updates #11041 Change-Id: I78f8d48f00cfbb451e37c868cc472ef06ea0fd95 Reviewed-on: https://go-review.googlesource.com/27491 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Josh Bleecher Snyder authored
Fixes #16641 Updates #11041 Change-Id: I087208a486f535d74135591b2c9a73168cf80e1a Reviewed-on: https://go-review.googlesource.com/27490 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Brad Fitzpatrick authored
The old deprecation docs were referencing another deprecated field. Fixes #16752 Change-Id: I44a690048e00ddc790a80214ecb7f5bb0a5b7b34 Reviewed-on: https://go-review.googlesource.com/27510Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
Billy Lynch authored
Partially addresses #16360 Change-Id: I67a328302d7d91231f348d934e4232fcb844830a Reviewed-on: https://go-review.googlesource.com/27398Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Eric Lagergren authored
The error return from copyValue was ignored causing some XML attribute parsing to swallow an error. Additionally, type MyMarshalerAttrTest had no UnmarshalXMLAttr method causing marshalTests not to be symmetrical and the test suite to fail for test case 101. Fixes #16158 Change-Id: Icebc505295a2c656ca4b42ba37bb0957dd7260c6 Reviewed-on: https://go-review.googlesource.com/27455Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Dmitry Vyukov authored
In StartTrace we emit EvGoCreate for all existing goroutines. This includes stack unwind to obtain current stack. Real Go programs can contain hundreds of thousands of blocked goroutines. For such programs StartTrace can take up to a second (few ms per goroutine). Obtain current stack ID once and use it for all EvGoCreate events. This speeds up StartTrace with 10K blocked goroutines from 20ms to 4 ms (win for StartTrace called from net/http/pprof hander will be bigger as stack is deeper). Change-Id: I9e5ff9468331a840f8fdcdd56c5018c2cfde61fc Reviewed-on: https://go-review.googlesource.com/25573 Run-TryBot: Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
-
Josh Bleecher Snyder authored
They are unused, and vet wants them to have a function prototype. Updates #11041 Change-Id: Idedc96ddd3c3cf1b1d2ab6d98796367eab29f032 Reviewed-on: https://go-review.googlesource.com/27492 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Cherry Zhang authored
Fib with all int and float types run correctly. *, /, shifts, Zero, Move not implemented yet. No optimization yet. Updates #16359. Change-Id: I4b0412954d5fd4c13a5fcddd8689ed8ac701d345 Reviewed-on: https://go-review.googlesource.com/27404Reviewed-by: David Chase <drchase@google.com>
-
Josh Bleecher Snyder authored
When compiling with -m -m, this adds output for every non-inlined function explaining why it was not inlined. Change-Id: Icb59ae912a835c996e6b3475b163ee5125113001 Reviewed-on: https://go-review.googlesource.com/22782 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
If a build directive contains multiple arches, try to match the build context. Updates #11041 Change-Id: I03b5d7bfb29d1ff6c7d36a9d7c7fabfcc1d871c1 Reviewed-on: https://go-review.googlesource.com/27158 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Josh Bleecher Snyder authored
Updates #11041 Change-Id: Ic6df8ef25b7cf280db523950cd3640b060ad1a9b Reviewed-on: https://go-review.googlesource.com/27157 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Josh Bleecher Snyder authored
bytes.Compare has its go prototype in package bytes, but its implementation in package runtime. vet used to complain that the prototype was missing. Now instead: runtime/asm_amd64.s:1483: [amd64] cannot check cross-package assembly function: Compare is in package bytes Updates #11041 Change-Id: Ied44fac10d0916d7a34e552c02d052e16fca0c8c Reviewed-on: https://go-review.googlesource.com/27153 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Josh Bleecher Snyder authored
Before: : runtime/asm_amd64.s:345: [amd64] morestack: use of 8(SP) points beyond argument frame After: runtime/asm_amd64.s:345: [amd64] morestack: use of 8(SP) points beyond argument frame Updates #11041 Change-Id: Ic87a6d1a2a7b2a8bf737407bc981b159825c84f2 Reviewed-on: https://go-review.googlesource.com/27152 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Josh Bleecher Snyder authored
The asmdecl check had hand-rolled code that calculated the size and offset of parameters based only on the AST. It included a list of known named types. This CL changes asmdecl to use go/types instead. This allows us to easily handle named types. It also adds support for structs, arrays, and complex parameters. It improves the default names given to unnamed parameters. Previously, all anonymous arguments were called "unnamed", and the first anonymous return argument was called "ret". Anonymous arguments are now called arg, arg1, arg2, etc., depending on the index in the argument list. Return arguments are ret, ret1, ret2. This CL also fixes a bug in the printing of composite data type sizes. Updates #11041 Change-Id: I1085116a26fe6199480b680eff659eb9ab31769b Reviewed-on: https://go-review.googlesource.com/27150 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Josh Bleecher Snyder authored
Eliminate a spill in concatstrings. Provide bounds elim hints in runetochar. No significant benchmark movement. Before: "".runetochar t=1 size=412 args=0x28 locals=0x0 "".concatstrings t=1 size=736 args=0x30 locals=0x98 After: "".runetochar t=1 size=337 args=0x28 locals=0x0 "".concatstrings t=1 size=711 args=0x30 locals=0x90 Change-Id: Icce646976cb20a223163b7e72a54761193ac17e3 Reviewed-on: https://go-review.googlesource.com/27460 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Martin Möhrmann <martisch@uos.de> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Michael Matloob authored
This moves many of the flag globals into main and assigns them to their flag.String/Int64/... directly. Updates #16818 Change-Id: Ibbff44a273bbc5cb7228e43f147900ee8848517f Reviewed-on: https://go-review.googlesource.com/27473Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
Brad Fitzpatrick authored
Go 1.7 crashed after Transport.IdleConnTimeout if an HTTP/2 connection was established but but its caller no longer wanted it. (Assuming the connection cache was enabled, which it is by default) Fixes #16208 Change-Id: I9628757f7669e344f416927c77f00ed3864839e3 Reviewed-on: https://go-review.googlesource.com/27450Reviewed-by: Andrew Gerrand <adg@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Michael Hudson-Doyle authored
It's always called with the same arguments now. Maybe the real fix is to make Symbol.Sub a slice but that requires a bit more brain. Change-Id: I1326d34a0a327554be6d54f9bd402ea328224766 Reviewed-on: https://go-review.googlesource.com/27416 Run-TryBot: Michael Hudson-Doyle <michael.hudson@canonical.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Michael Matloob <matloob@golang.org>
-
Brad Fitzpatrick authored
Updates bundled http2 to x/net/http2 git rev 7394c11 for: http2: fix protocol violation regression when writing certain request bodies https://golang.org/cl/27406 Fixes #16788 Change-Id: I0efcd36e2b4b34a1df79f763d35bf7a3a1858506 Reviewed-on: https://go-review.googlesource.com/27451 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Andrew Gerrand <adg@golang.org>
-
- 21 Aug, 2016 4 commits
-
-
Josh Bleecher Snyder authored
Relevant issues: #5056, #9537, and #11053. Their tests all pass. Change-Id: Ibbe05982ed5f332149ffd2cb6a232b8d677c4454 Reviewed-on: https://go-review.googlesource.com/27464 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
Change-Id: I417aae8622d7d363863704594680bd2502a09049 Reviewed-on: https://go-review.googlesource.com/27463 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
We will never inline recursive calls. Rather than simulate the recursion until we hit the complexity ceiling, just bail early. Also, remove a pointless n.Op check. visitBottomUp guarantees that n will be an ODCLFUNC, and caninl double-checks it. Change-Id: Ifa48331686b24289d34e68cf5bef385f464b6b92 Reviewed-on: https://go-review.googlesource.com/27462 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
Their only purpose in life was to suppress an error. Suppress that error explicitly instead by reusing an existing, aptly named Node field. This generates fewer blocks during ssa construction. name old alloc/op new alloc/op delta Template 47.5MB ± 0% 47.2MB ± 0% -0.72% (p=0.000 n=15+15) Unicode 36.8MB ± 0% 36.8MB ± 0% ~ (p=0.775 n=15+15) GoTypes 143MB ± 0% 142MB ± 0% -1.03% (p=0.000 n=15+14) Compiler 686MB ± 0% 674MB ± 0% -1.75% (p=0.000 n=15+15) name old allocs/op new allocs/op delta Template 446k ± 0% 445k ± 0% -0.20% (p=0.000 n=15+15) Unicode 355k ± 0% 355k ± 0% ~ (p=0.235 n=13+15) GoTypes 1.36M ± 0% 1.36M ± 0% -0.41% (p=0.000 n=13+15) Compiler 5.77M ± 0% 5.70M ± 0% -1.16% (p=0.000 n=15+15) Change-Id: I5f14afb833c9d355688d9a229eb820e95c7657bf Reviewed-on: https://go-review.googlesource.com/27461 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-