- 01 Dec, 2017 14 commits
-
-
Russ Cox authored
The CL introducing merged handling of cover profiles did not correctly account for the fact that the file name argument to -coverprofile is required to be interpreted relative to the -outputdir argument. Fixes #22804. Change-Id: I804774013c12187313b8fd2044302978bdbb6697 Reviewed-on: https://go-review.googlesource.com/81455 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Than McIntosh authored
The code that generates the list of DWARF variables for a function (params and autos) will emit a "no-location" entry in the DWARF for a user var that appears in the original pre-optimization version of the function but is no longer around when optimization is complete. The intent is that if a GDB user types "print foo" (where foo has been optimized out), the response will be "<optimized out>" as opposed to "there is no such variable 'foo'). This change fixes said code to include vars on the autom list for the function, to insure that the type symbol for the variable makes it to the linker. Fixes #22941. Change-Id: Id29f1f39d68fbb798602dfd6728603040624fc41 Reviewed-on: https://go-review.googlesource.com/81415 Run-TryBot: Than McIntosh <thanm@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Russ Cox authored
Values must not be copied after the first use. Using noCopy makes vet complain about copies even before the first use, which is incorrect and very frustrating. Drop it. Fixes #21504. Change-Id: Icd3a5ac3fe11e84525b998e848ed18a5d996f45a Reviewed-on: https://go-review.googlesource.com/80836 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Tobias Klauser authored
Change-Id: Ibf227dcfefa179b1c3378476bcd17100b1b1c01e Reviewed-on: https://go-review.googlesource.com/81375 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Russ Cox authored
Call is meant to mirror the language semantics, which allow: var r io.ReadWriter f := func(io.Reader){} f(r) even though the conversion from io.ReadWriter to io.Reader is being applied to a nil interface. This is different from an explicit conversion: _ = r.(io.Reader) f(r.(io.Reader)) Both of those lines panic, but the implicit conversion does not. By using E2I, which is the implementation of the explicit conversion, the reflect.Call equivalent of f(r) was inadvertently panicking. Avoid the panic. Fixes #22143. Change-Id: I6b2f5b808e0cd3b89ae8bc75881e307bf1c25558 Reviewed-on: https://go-review.googlesource.com/80736 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
David Chase authored
The ssa backend is aggressive about placing constants and certain other values in the Entry block. It's implausible that the original line numbers for these constants makes any sort of sense when it appears to a user stepping in a debugger, and they're also not that useful in dumps since entry-block instructions tend to be constants (i.e., unlikely to be the cause of a crash). Therefore, use src.NoXPos for any values that are explicitly inserted into a function's entry block. Passes all tests, including ssa/debug_test.go with both gdb and a fairly recent dlv. Hand-verified that it solves the reported problem; constructed a test that reproduced a problem, and fixed it. Modified test harness to allow injection of slightly more interesting inputs. Fixes #22558. Change-Id: I4476927067846bc4366da7793d2375c111694c55 Reviewed-on: https://go-review.googlesource.com/81215 Run-TryBot: David Chase <drchase@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
-
Brad Fitzpatrick authored
Fixes #19293 Change-Id: I35f2f786e2e3972eda21ba5a948433bfcd621269 Reviewed-on: https://go-review.googlesource.com/81355Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Updates http2 to x/net git rev 894f8ed58 for: http2: fix flake in net/http's TestCloseIdleConnections_h2 https://golang.org/cl/80139 http2: fix leak in activeRes by removing activeRes https://golang.org/cl/80137 Fixes #22413 Fixes #21543 Change-Id: Ic8ea20f8ddae2fde17884ed045f9fa7058a4bd23 Reviewed-on: https://go-review.googlesource.com/81276 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Tom Bergan <tombergan@google.com>
-
Joe Tsai authored
This reverts commit 08f19bbd. Reason for revert: The changed transformation takes effect on a larger set of code snippets than expected. For example, this: func foo() { // Comment bar() } becomes: func foo() { // Comment bar() } This is an unintended consequence. Change-Id: Ifca88d6267dab8a8170791f7205124712bf8ace8 Reviewed-on: https://go-review.googlesource.com/81335Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Joe Tsai <joetsai@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Fixes #6007 Change-Id: I239a1699122e086e907ac1f18b1c86a650e1438a Reviewed-on: https://go-review.googlesource.com/81135 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Matthew Dempsky authored
GOEXPERIMENT is only set during make.bash, so checking the environment variable isn't effectual. Instead, check the values exposed by objabi. These experiments look potentially safe, but it seems too late in the release cycle to try to assuage that. The one exception is frame pointer experiment, which is trivially safe: it just amounts to incrementing some stack offsets by PtrSize. Fixes #22223. Change-Id: I46dc7c54b1347143d02d6b9635038230cda6d164 Reviewed-on: https://go-review.googlesource.com/80760Reviewed-by: Russ Cox <rsc@golang.org>
-
Russ Cox authored
It's not safe (it crashes), and it's also useless: if you run multiple benchmarks in parallel you will not get reliable timing results from any of them. Fixes #18603. Change-Id: I00e5a72f7c98151543cf7d5573c38383276e391a Reviewed-on: https://go-review.googlesource.com/80841Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Russ Cox authored
Reading the mem stats before our own allocations avoids cluttering memory stats with our recent garbage. Fixes #20565. Change-Id: I3b0046c8300dca83cea24013ffebc32b2ae7f742 Reviewed-on: https://go-review.googlesource.com/80739Reviewed-by: Austin Clements <austin@google.com> Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Russ Cox authored
Lock in fix for #22738, submitted in CL 78031. Fixes #22738. Change-Id: I6896feb158569e3f12fa7055387cbd7caad29ef4 Reviewed-on: https://go-review.googlesource.com/80635 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>
-
- 30 Nov, 2017 19 commits
-
-
Tobias Klauser authored
The build tags already prevent the tests from being run on windows or plan9, so there is no need to check GOOS again. Change-Id: I74d3c3b7756d9c50f6e5fd4c3e8b0db618fdebbb Reviewed-on: https://go-review.googlesource.com/81295 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
Otherwise we may delay the delivery of these signals for an arbitrary length of time. We are already careful to not block signals that the program has asked to see. Also make sure that we don't miss a signal delivery if a thread decides to stop for a while while executing the signal handler. Also clean up the TestAtomicStop output a little bit. Fixes #21433 Change-Id: Ic0c1a4eaf7eba80d1abc1e9537570bf4687c2434 Reviewed-on: https://go-review.googlesource.com/79581 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Austin Clements <austin@google.com>
-
Hiroshi Ioka authored
Change-Id: I850d961e0444f8d34284e994aee183afba35eaa7 Reviewed-on: https://go-review.googlesource.com/79597Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Ilya Tocar authored
This is inspired by https://blog.cloudflare.com/go-dont-collect-my-garbage/ This CL adds allocation tracking and parallelizes p256-related benchmarks. Amount of allocations can be significantly reduced by marking amd64 asm functions as noescape. This exposes a bug in p256MovCond: PANDN with memory argument will fault if memory is not aligned, so they are replaced with MOVDQU (which is ok with unaligned memory) and register version of PANDN. Results on 88-thread machine (2x 22 cores) below: crypto/elliptic: name old time/op new time/op delta BaseMultP256-88 1.50µs ±11% 1.19µs ± 5% -20.20% (p=0.000 n=10+10) ScalarMultP256-88 5.47µs ± 5% 3.63µs ±10% -33.66% (p=0.000 n=9+10) name old alloc/op new alloc/op delta BaseMultP256-88 800B ± 0% 288B ± 0% -64.00% (p=0.000 n=10+10) ScalarMultP256-88 2.59kB ± 0% 0.26kB ± 0% -90.12% (p=0.000 n=10+10) name old allocs/op new allocs/op delta BaseMultP256-88 13.0 ± 0% 6.0 ± 0% -53.85% (p=0.000 n=10+10) ScalarMultP256-88 16.0 ± 0% 5.0 ± 0% -68.75% (p=0.000 n=10+10) crypto/ecdsa: name old time/op new time/op delta SignP256-88 8.63µs ±37% 7.55µs ±38% ~ (p=0.393 n=10+10) VerifyP256-88 13.9µs ± 8% 7.0µs ± 7% -49.29% (p=0.000 n=10+9) KeyGeneration-88 2.77µs ±11% 2.34µs ±11% -15.57% (p=0.000 n=10+10) name old alloc/op new alloc/op delta SignP256-88 4.14kB ± 1% 2.98kB ± 2% -27.94% (p=0.000 n=10+10) VerifyP256-88 4.47kB ± 0% 0.99kB ± 0% -77.84% (p=0.000 n=9+10) KeyGeneration-88 1.21kB ± 0% 0.69kB ± 0% -42.78% (p=0.000 n=10+10) name old allocs/op new allocs/op delta SignP256-88 47.0 ± 0% 34.0 ± 0% -27.66% (p=0.000 n=10+10) VerifyP256-88 38.0 ± 0% 17.0 ± 0% -55.26% (p=0.000 n=10+10) KeyGeneration-88 20.0 ± 0% 13.0 ± 0% -35.00% (p=0.000 n=10+10) On machine with only 4 cores, results are much less impressive: around 2% performance gain. Change-Id: I8a2f8168f83d27ad9ace1b4b1a1e11cb83edf717 Reviewed-on: https://go-review.googlesource.com/80757 Run-TryBot: Ilya Tocar <ilya.tocar@intel.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Ilya Tocar authored
Dim performance has regressed by 14% vs 1.9 on amd64. Current pure go version of Dim is faster and, what is even more important for performance, is inlinable, so instead of tweaking asm implementation, just remove it. I had to update BenchmarkDim, because it was simply reloading constant(answer) in a loop. Perf data below: name old time/op new time/op delta Dim-6 6.79ns ± 0% 1.60ns ± 1% -76.39% (p=0.000 n=7+10) If I modify benchmark to be the same as in this CL results are even better: name old time/op new time/op delta Dim-6 10.2ns ± 0% 1.6ns ± 1% -84.27% (p=0.000 n=8+10) Updates #21913 Change-Id: I00e23c8affc293531e1d9f0e0e49f3a525634f53 Reviewed-on: https://go-review.googlesource.com/80695 Run-TryBot: Ilya Tocar <ilya.tocar@intel.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Austin Clements authored
Updates #22893. Change-Id: I2cf5efb4fa6b77aaf82de5d8877c99f9aa5d519a Reviewed-on: https://go-review.googlesource.com/81195 Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Alberto Donizetti authored
In nat.divLarge (having signature (z nat).divLarge(u, uIn, v nat)), we check whether z aliases uIn or v, but aliasing is currently not checked for the u parameter. Unfortunately, z and u aliasing each other can in some cases cause errors in the computation. The q return parameter (which will hold the result's quotient), is unconditionally initialized as q = z.make(m + 1) When cap(z) ≥ m+1, z.make() will reuse z's backing array, causing q and z to share the same backing array. If then z aliases u, setting q during the quotient computation will then corrupt u, which at that point already holds computation state. To fix this, we add an alias(z, u) check at the beginning of the function, taking care of aliasing the same way we already do for uIn and v. Fixes #22830 Change-Id: I3ab81120d5af6db7772a062bb1dfc011de91f7ad Reviewed-on: https://go-review.googlesource.com/78995 Run-TryBot: Alberto Donizetti <alb.donizetti@gmail.com> Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Hana (Hyang-Ah) Kim authored
The trace command computes IO, Schedule, Block, and Syscall profiles by following the unblocking links in the execution trace and summing up the duration. This change offers variations of those profiles that include only selected goroutine types. The id parameter takes the goroutine type - i.e. pc of the goroutine. The output is available from the /goroutine view. So, users can see where the goroutines of interest typically block. Also, these profiles are available for download so users can use pprof or other tools to interpret the output. This change adds links for download of global profile in the main page. Change-Id: I35699252056d164e60de282b0406caf96d629c85 Reviewed-on: https://go-review.googlesource.com/75710Reviewed-by: Sameer Ajmani <sameer@golang.org>
-
Vladimir Stefanovic authored
Updates #18162 (mostly fixes) Change-Id: I35bcb8a688bdaa432adb0ddbb73a2f7adda47b9e Reviewed-on: https://go-review.googlesource.com/37958 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Brad Fitzpatrick authored
I've been doing these tweaks by hand. I was going to write a tool in Go for it, but it's not much additional shell here. Fixes #22912 Updates #9797 (already closed) Change-Id: Ia15bd9b6876e6f6a76aa9ca86b10f113095e96a3 Reviewed-on: https://go-review.googlesource.com/80895Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Vladimir Stefanovic authored
Updates #18162 Change-Id: I591fcf71a02678a99a56a6487da9689d3c9b1bb6 Reviewed-on: https://go-review.googlesource.com/37955 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Vladimir Stefanovic authored
Updates #18162 Change-Id: Iee854f48b2d1432955fdb462f2073ebbe76c34f8 Reviewed-on: https://go-review.googlesource.com/37957 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Vladimir Stefanovic authored
GOMIPS is a GOARCH=mips{,le} specific option, for a choice between hard-float and soft-float. Valid values are 'hardfloat' (default) and 'softfloat'. It is passed to the assembler as 'GOMIPS_{hardfloat,softfloat}'. Note: GOMIPS will later also be used for a choice of MIPS instruction set (mips32/mips32r2). Updates #18162 Change-Id: I35417db8625695f09d6ccc3042431dd2eaa756a6 Reviewed-on: https://go-review.googlesource.com/37954 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Tobias Klauser authored
Fix a typo of "packageshlib" used for generating the link action ID. Change-Id: Id6d39830908b03de658a58661030c32c592a1da9 Reviewed-on: https://go-review.googlesource.com/80935 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Alberto Donizetti <alb.donizetti@gmail.com>
-
Than McIntosh authored
Compiler and linker changes to support DWARF inlined instances, see https://go.googlesource.com/proposal/+/HEAD/design/22080-dwarf-inlining.md for design details. This functionality is gated via the cmd/compile option -gendwarfinl=N, where N={0,1,2}, where a value of 0 disables dwarf inline generation, a value of 1 turns on dwarf generation without tracking of formal/local vars from inlined routines, and a value of 2 enables inlines with variable tracking. Updates #22080 Change-Id: I69309b3b815d9fed04aebddc0b8d33d0dbbfad6e Reviewed-on: https://go-review.googlesource.com/75550 Run-TryBot: Than McIntosh <thanm@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
-
Cherry Zhang authored
ORANGE node's Right node is the expression it is ranging over, which is evaluated before the loop. In the escape analysis, we should walk this node without loop depth incremented. Fixes #21709. Change-Id: Idc1e4c76e39afb5a344d85f6b497930a488ce5cf Reviewed-on: https://go-review.googlesource.com/80740 Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
-
Brad Fitzpatrick authored
This reverts commit a631daba. Reason for revert: I was wrong. It still fails on the builders. I don't know what's different about my VMWare VM, but on GCE it fails. Change-Id: Ic6bee494b69235768bf08ba0bf59026bca41ad12 Reviewed-on: https://go-review.googlesource.com/80915Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Brad Fitzpatrick authored
Fixes #22778 Change-Id: I37f7a59c15828aa720fe787fff42fb3ef17729c7 Reviewed-on: https://go-review.googlesource.com/80815Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Brad Fitzpatrick authored
It must've been fixed since NetBSD 7.0. I can no longer reproduce it with NetBSD 8-BETA (our new minimum NetBSD requirement). Fixes #19293 Change-Id: I28f970ca41a53a037e1c6cddf1b7f286bda2d725 Reviewed-on: https://go-review.googlesource.com/80875 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 29 Nov, 2017 7 commits
-
-
Robert Griesemer authored
The fix (CL 79575) for #18395 is too risky at this stage of the Go 1.10 release process. Since issue #18395 is easily recognized (but not easily fixed), report an error instead of silently continuing. This avoids inscrutable follow on errors. Also, make sure all empty interfaces are "completed", and adjust printing code to report incomplete interfaces. For #18395. Change-Id: I7fa5f97ff31ac9775c9a6d318fce9f526b0350cd Reviewed-on: https://go-review.googlesource.com/80455Reviewed-by: Alan Donovan <adonovan@google.com>
-
Robert Griesemer authored
Fixes #22815. Change-Id: Iaa54fa311bf2c0549a6316a0d51cc92425f5ba94 Reviewed-on: https://go-review.googlesource.com/80855Reviewed-by: Daniel Martí <mvdan@mvdan.cc> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Cherry Zhang authored
Updates #20650 (CL 45099 introduced the feature to x86). Change-Id: If40cc9d87417a05281d8633f05cd91f6f434b136 Reviewed-on: https://go-review.googlesource.com/80843 Run-TryBot: Cherry Zhang <cherryyz@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Cherry Zhang authored
In the x/arch repo, CL 45098 introduced SymLookup type, replacing the unnamed function type for lookup functions. This affects the signature of x86asm.GoSyntax. In particular, it cannot convert one named type, namely lookupFunc, to the other without an explicit cast. Make lookupFunc unnamed to fix. Change-Id: I973300d29ef1dbfdbd7fc2429e89c5849e6a7329 Reviewed-on: https://go-review.googlesource.com/80842 Run-TryBot: Cherry Zhang <cherryyz@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Matthew Dempsky authored
For "type T = U" we were accidentally emitting a #define for "U__size" instead of "T__size". Fixes #22877. Change-Id: I5ed6757d697753ed6d944077c16150759f6e1285 Reviewed-on: https://go-review.googlesource.com/80759 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Leigh McCulloch authored
The note about the single change workflow is included in the git-codereview installation instructions, but it has nothing to do with installing git-codereview. This note is more relevant for when a change is actually being made. Change-Id: Iccb90f3b7da87fab863fa4808438cd69a21a2fce Reviewed-on: https://go-review.googlesource.com/76317Reviewed-by: Steve Francia <spf@golang.org>
-
Brad Fitzpatrick authored
Updates to x/net git rev a8b92947779 for CL 80755 Updates #22927 Change-Id: I84aad75afd954c9a6c57ad9a76328b99f1dc74a1 Reviewed-on: https://go-review.googlesource.com/80758 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Benny Siegert <bsiegert@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-