- 05 May, 2016 7 commits
-
-
Cherry Zhang authored
TestFp and TestFP are same, remove one. Change-Id: Iffdece634cd4572421974496298925e7c6ac13a9 Reviewed-on: https://go-review.googlesource.com/22799Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Keith Randall authored
Provide indexes along with block pointers for Preds and Succs arrays. This allows us to splice edges in and out of those arrays in constant time. Fixes worst-case O(n^2) behavior in deadcode and fuse. benchmark old ns/op new ns/op delta BenchmarkFuse1-8 2065 2057 -0.39% BenchmarkFuse10-8 9408 9073 -3.56% BenchmarkFuse100-8 105238 76277 -27.52% BenchmarkFuse1000-8 3982562 1026750 -74.22% BenchmarkFuse10000-8 301220329 12824005 -95.74% BenchmarkDeadCode1-8 1588 1566 -1.39% BenchmarkDeadCode10-8 4333 4250 -1.92% BenchmarkDeadCode100-8 32031 32574 +1.70% BenchmarkDeadCode1000-8 590407 468275 -20.69% BenchmarkDeadCode10000-8 17822890 5000818 -71.94% BenchmarkDeadCode100000-8 1388706640 78021127 -94.38% BenchmarkDeadCode200000-8 5372518479 168598762 -96.86% Change-Id: Iccabdbb9343fd1c921ba07bbf673330a1c36ee17 Reviewed-on: https://go-review.googlesource.com/22589Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com> Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Cherry Zhang authored
Builder is too slow. This test passed on builder machines but took 15+ min. Change-Id: Ief9d67ea47671a57e954e402751043bc1ce09451 Reviewed-on: https://go-review.googlesource.com/22798Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Cherry Zhang authored
I overlooked it when rebasing CL 19803. Change-Id: Ife9d6bcc6a772715d137af903c64bafac0cdb216 Reviewed-on: https://go-review.googlesource.com/22797Reviewed-by: Minux Ma <minux@golang.org>
-
Ian Lance Taylor authored
Since tracebackctxt.go uses //export functions, the C functions can't be externally visible in the C comment. The code was using attributes to work around that, but that failed on Windows. Change-Id: If4449fd8209a8998b4f6855ea89e5db1471b2981 Reviewed-on: https://go-review.googlesource.com/22786Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Alex Brainman authored
CLs 22181, 22332 and 22336 intorduced new functionality to be used in cmd/link (see issue #15345 for details). But we didn't have chance to use new functionality yet. Unexport newly introduced identifiers, so we don't have to commit to the API until we actually tried it. Rename File.COFFSymbols into File._COFFSymbols, COFFSymbol.FullName into COFFSymbol._FullName, Section.Relocs into Section._Relocs, Reloc into _Relocs, File.StringTable into File._StringTable and StringTable into _StringTable. Updates #15345 Change-Id: I770eeb61f855de85e0c175225d5d1c006869b9ec Reviewed-on: https://go-review.googlesource.com/22720Reviewed-by: David Crawshaw <crawshaw@golang.org> Run-TryBot: Alex Brainman <alex.brainman@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Nigel Tao authored
Change-Id: I93db5cd86e3fb568e4444cad95268ba4a02ce8a0 Reviewed-on: https://go-review.googlesource.com/22787Reviewed-by: Nigel Tao <nigeltao@golang.org>
-
- 04 May, 2016 24 commits
-
-
Michael Munday authored
Adds the FCFIDU instruction and uses it instead of the FCFID instruction for unsigned integer to float casts. This change means that unsigned integers do not have to be cast to signed integers before being cast to a floating point value. Therefore it is no longer necessary to insert instructions to detect and fix values that overflow int64. The previous code generating the uint64 to int64 cast handled overflow by truncating the uint64 value. This truncation can change the result of the rounding performed by the integer to float cast. The FCFIDU instruction was added in Power ISA 2.06B. Fixes #15539. Change-Id: Ia37a9631293eff91032d4cd9a9bec759d2142437 Reviewed-on: https://go-review.googlesource.com/22772Reviewed-by: David Chase <drchase@google.com> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Robert Griesemer authored
Change-Id: Ic3415f3ee643636eab4ff7d2351b8ad0dae62895 Reviewed-on: https://go-review.googlesource.com/22792Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Mohit Agarwal authored
Fixes #15541 Change-Id: I9b6835157db0eb86de13591e785f971ffe754baa Reviewed-on: https://go-review.googlesource.com/22783Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Shenghou Ma authored
Fixes #15546. Change-Id: I39c29ea6999812dd5f1c45f67bddad28f20b6c6b Reviewed-on: https://go-review.googlesource.com/22773Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Shenghou Ma authored
debug/elf is only needed to determine the endianness of the host machine, which is easy to do without debug/elf. Fixes #15180. Change-Id: I21035ed3884871270765a1ca3b812a5d4890a7ee Reviewed-on: https://go-review.googlesource.com/21662Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Josh Bleecher Snyder authored
Fixes #15510 Change-Id: I2e0568778ef90cf29712753b8c42109ef84a0256 Reviewed-on: https://go-review.googlesource.com/22784 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
-
Brad Fitzpatrick authored
To speed up the ssacheck check builder and make it on by default as a trybot. Change-Id: I91a3347491507c84f4878dff744ca426ba3e2e9f Reviewed-on: https://go-review.googlesource.com/22755 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Andrew Gerrand <adg@golang.org>
-
Shenghou Ma authored
Change-Id: Ib29cf7abbbdaed81e918e5e41bca4e9b8da24621 Reviewed-on: https://go-review.googlesource.com/22503Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Shenghou Ma authored
Change-Id: I0a6a92604dbfa4b0f9c5ae483b574331f246dcad Reviewed-on: https://go-review.googlesource.com/22502 Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Shenghou Ma authored
Change-Id: I78efbfe0d7e9825126109a568c99f548a099b0fb Reviewed-on: https://go-review.googlesource.com/22771Reviewed-by: Minux Ma <minux@golang.org>
-
Cherry Zhang authored
external linking is now supported. Change-Id: I13e90c39dad86e60781adecdbe8e6bc9e522f740 Reviewed-on: https://go-review.googlesource.com/19811Reviewed-by: Minux Ma <minux@golang.org>
-
Cherry Zhang authored
external linking is now supported. Change-Id: I3f552f5f09391205fced509fe8a5a38297ea8153 Reviewed-on: https://go-review.googlesource.com/19810Reviewed-by: Minux Ma <minux@golang.org>
-
Cherry Zhang authored
Fixes #14126 Change-Id: I21c8e06c01d3ef02ee09dc185d4443e2da8fd52b Reviewed-on: https://go-review.googlesource.com/19809Reviewed-by: Minux Ma <minux@golang.org>
-
Cherry Zhang authored
Change-Id: If2b4abb6ff322c20e35de025298c8e5ab53edd42 Reviewed-on: https://go-review.googlesource.com/19808Reviewed-by: Minux Ma <minux@golang.org>
-
Cherry Zhang authored
cgo internal linking is not supported yet (issue #14449). Change-Id: Ic968916383d77b7f449db8f230c928a1e81939e0 Reviewed-on: https://go-review.googlesource.com/19807Reviewed-by: Minux Ma <minux@golang.org>
-
Cherry Zhang authored
Change-Id: Id40dd05b7b264f3b779fdf9ccc2421ba4bc70589 Reviewed-on: https://go-review.googlesource.com/19806Reviewed-by: Minux Ma <minux@golang.org>
-
Cherry Zhang authored
Change-Id: Id018516075842afd8af12fbf207763a851d5a851 Reviewed-on: https://go-review.googlesource.com/22754Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Martin Möhrmann authored
Fixes #14544 Change-Id: I58b0b164ebbfeafe4ab32039a063df53e3018a6d Reviewed-on: https://go-review.googlesource.com/22730Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Sean Lake <odysseus9672@gmail.com>
-
Niko Dziemba authored
Similar to the flate Writer pools already used, this adds pooling for flate Readers. compress/flate allows re-using of Readers, see https://codereview.appspot.com/97140043/ In a real-world scenario when reading ~ 500 small files from a ZIP archive this gives a speedup of 1.5x-2x. Fixes #14289 Change-Id: I2d98ad983e95ab7d97e06fd0145f619b4f47caa4 Reviewed-on: https://go-review.googlesource.com/19416 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Hudson-Doyle authored
Consider three shared libraries: libBase.so -- defines a type T lib2.so -- references type T lib3.so -- also references type T, and something from lib2 lib2.so will contain a type symbol for T in its symbol table, but no definition. If, when linking lib3.so the linker reads the symbols from lib2.so before libBase.so, the linker didn't read the type data and later crashed. The fix is trivial but the test change is a bit messy because the order the linker reads the shared libraries in ends up depending on the order of the import statements in the file so I had to rename one of the test packages so that gofmt doesn't fix the test by accident... Fixes #15516 Change-Id: I124b058f782c900a3a54c15ed66a0d91d0cde5ce Reviewed-on: https://go-review.googlesource.com/22744 Run-TryBot: Michael Hudson-Doyle <michael.hudson@canonical.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Alex Brainman authored
See CL 22720 for details. Updates #15345 Change-Id: If93ddbb8137d57da9846b671160b4cebe1992570 Reviewed-on: https://go-review.googlesource.com/22752Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
Keith Randall authored
Why not? Because the 386 backend can't handle one of them. But other than that, it should work. Change-Id: Iaeb9735f8c3c281136a0734376dec5ddba21be3b Reviewed-on: https://go-review.googlesource.com/22748 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
-
Vishvananda Ishaya authored
Change https://golang.org/cl/8945 allowed Go to use its own DNS resolver instead of libc in a number of cases. The code parses nsswitch.conf and attempts to resolve things in the same order. Unfortunately, builds with netgo completely ignore this parsing and always search via hostLookupFilesDNS. This commit modifies the logic to allow binaries built with netgo to parse nsswitch.conf and attempt to resolve using the order specified there. If the parsing results in hostLookupCGo, it falls back to the original hostLookupFilesDNS. Tests are also added to ensure that both the parsing and the fallback work properly. Fixes #14354 Change-Id: Ib079ad03d7036a4ec57f18352a15ba55d933f261 Reviewed-on: https://go-review.googlesource.com/19523 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Ian Lance Taylor authored
If we collected a cgo traceback when entering the SIGPROF signal handler, record it as part of the profiling stack trace. This serves as the promised test for https://golang.org/cl/21055 . Change-Id: I5f60cd6cea1d9b7c3932211483a6bfab60ed21d2 Reviewed-on: https://go-review.googlesource.com/22650 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Austin Clements <austin@google.com>
-
- 03 May, 2016 9 commits
-
-
Brad Fitzpatrick authored
Change-Id: I774dbd4f90ef271a0969c3c8e65d145669312e3e Reviewed-on: https://go-review.googlesource.com/22745 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ross Light <light@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Keith Randall authored
It never makes sense to CSE two ops that generate memory. We might as well start those ops off in their own partition. Fixes #15520 Change-Id: I0091ed51640f2c10cd0117f290b034dde7a86721 Reviewed-on: https://go-review.googlesource.com/22741Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com> Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
0 byte reads at EOF weren't returning EOF. Change-Id: I19b5fd5a72e83d49566a230ce4067be03f00d14b Reviewed-on: https://go-review.googlesource.com/22740Reviewed-by: Bryan Mills <bcmills@google.com> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Robert Griesemer authored
1) Blank parameters cannot be accessed so the package doesn't matter. Do not export it, and consistently use localpkg when importing a blank parameter. 2) More accurately replicate fmt.go and parser.go logic when importing a blank struct field. Blank struct fields get exported without package qualification. (This is actually incorrect, even with the old textual export format, but we will fix that in a separate change. See also issue 15514.) Fixes #15491. Change-Id: I7978e8de163eb9965964942aee27f13bf94a7c3c Reviewed-on: https://go-review.googlesource.com/22714Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Dmitry Vyukov authored
1.7 traces embed symbol info and we now generate symbolized pprof profiles, so we don't need the binary. Make binary argument optional as 1.5 traces still need it. Change-Id: I65eb13e3d20ec765acf85c42d42a8d7aae09854c Reviewed-on: https://go-review.googlesource.com/22410Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com> Reviewed-by: Austin Clements <austin@google.com>
-
Dmitry Vyukov authored
Race runtime also needs local malloc caches and currently uses a mix of per-OS-thread and per-goroutine caches. This leads to increased memory consumption. But more importantly cache of synchronization objects is per-goroutine and we don't always have goroutine context when feeing memory in GC. As the result synchronization object descriptors leak (more precisely, they can be reused if another synchronization object is recreated at the same address, but it does not always help). For example, the added BenchmarkSyncLeak has effectively runaway memory consumption (based on a real long running server). This change updates race runtime with support for per-P contexts. BenchmarkSyncLeak now stabilizes at ~1GB memory consumption. Long term, this will allow us to remove race runtime dependency on glibc (as malloc is the main cornerstone). I've also implemented a different scheme to pass P context to race runtime: scheduler notified race runtime about association between G and P by calling procwire(g, p)/procunwire(g, p). But it turned out to be very messy as we have lots of places where the association changes (e.g. syscalls). So I dropped it in favor of the current scheme: race runtime asks scheduler about the current P. Fixes #14533 Change-Id: Iad10d2f816a44affae1b9fed446b3580eafd8c69 Reviewed-on: https://go-review.googlesource.com/19970Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Dmitry Vyukov authored
Runqempty is a critical predicate for scheduler. If runqempty spuriously returns true, then scheduler can fail to schedule arbitrary number of runnable goroutines on idle Ps for arbitrary long time. With the addition of runnext runqempty predicate become broken (can spuriously return true). Consider that runnext is not nil and the main array is empty. Runqempty observes that the array is empty, then it is descheduled for some time. Then queue owner pushes another element to the queue evicting runnext into the array. Then queue owner pops runnext. Then runqempty resumes and observes runnext is nil and returns true. But there were no point in time when the queue was empty. Fix runqempty predicate to not return true spuriously. Change-Id: Ifb7d75a699101f3ff753c4ce7c983cf08befd31e Reviewed-on: https://go-review.googlesource.com/20858Reviewed-by: Austin Clements <austin@google.com> Run-TryBot: Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Michael Hudson-Doyle authored
GCC, unlike clang, does not provide any way for code being compiled to tell if -fsanitize-thread was passed. But cgo can look to see if that flag is being passed and generate different code in that case. Fixes #14602 Change-Id: I86cb5318c2e35501ae399618c05af461d1252d2d Reviewed-on: https://go-review.googlesource.com/22688 Run-TryBot: Michael Hudson-Doyle <michael.hudson@canonical.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Brad Fitzpatrick authored
Addressing feedback from Alan Su in https://golang.org/cl/22655 Change-Id: Ie0724efea2b4da67503c074e265ec7f8d7de7791 Reviewed-on: https://go-review.googlesource.com/22709Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-