- 09 May, 2016 6 commits
-
-
Shenghou Ma authored
Fixes #15607. Change-Id: I3e68ad00ebe72027d064238d4e77f1ad6a52f533 Reviewed-on: https://go-review.googlesource.com/22940Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Chase authored
In regalloc, a sparse map is preallocated for later use by spill-in-loop sinking. However, variables (spills) are added during register allocation before spill sinking, and a map query involving any of these new variables will index out of bounds in the map. To fix: 1) fix the queries to use s.orig[v.ID].ID instead, to ensure proper indexing. Note that s.orig will be nil for values that are not eligible for spilling (like memory and flags). 2) add a test. Fixes #15585. Change-Id: I8f2caa93b132a0f2a9161d2178320d5550583075 Reviewed-on: https://go-review.googlesource.com/22911Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: David Chase <drchase@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Mikhail Gusarov authored
Current number was out-of-date since adding MIPS. Change-Id: I565342a92de3893b75cdfb76fa39f7fdf15672da Reviewed-on: https://go-review.googlesource.com/22952Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Russ Cox authored
This flag is experimental and the semantics may change even after Go 1.7 is released. There are no changes to code not using the flag. The first part is for reading by future compiles. The second part is for reading by the final link step. Splitting the file this way allows distributed build systems to ship the compile-input part only to compile steps and the linker-input part only to linker steps. The first part is basically just the export data, and the second part is basically everything else. The overall files still have the same broad structure, so that existing tools will work with both halves. It's just that various pieces are empty in the two halves. This also copies the two bits of data the linker needed from export data into the object header proper, so that the linker doesn't need any export data at all. That eliminates a TODO that was left for switching to the binary export data. (Now the linker doesn't need to know about the switch.) The default is still to write out a combined output file. Nothing changes unless you pass -linkobj to the compiler. There is no support in the go command for -linkobj, since the go command doesn't copy objects around. The expectation is that other build systems (like bazel, say) might take advantage of this. The header adjustment and the option for the split output was intended as part of the zip archives, but the zip archives have been cut from Go 1.7. Doing this to the current archives both unblocks one step in the switch to binary export data and enables alternate build systems to experiment with the new flag using the Go 1.7 release. Change-Id: I8b6eab25b8a22b0a266ba0ac6d31e594f3d117f3 Reviewed-on: https://go-review.googlesource.com/22500 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Dmitry Vyukov authored
The test sometimes fails on builders. The test uses sleeps to establish the necessary goroutine execution order. If sleeps undersleep/oversleep the race is still reported, but it can be reported when the main test goroutine returns. In such case test driver can't match the race with the test and reports failure. Wait for both test goroutines to ensure that the race is reported in the test scope. Fixes #15579 Change-Id: I0b9bec0ebfb0c127d83eb5325a7fe19ef9545050 Reviewed-on: https://go-review.googlesource.com/22951 Run-TryBot: Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Robert Griesemer authored
Also: - replaced remaining panics with Fatal calls - more comments Fixes #15572. Change-Id: Ifb27e80b66700f5692a84078764a1e928d4b310d Reviewed-on: https://go-review.googlesource.com/22935 Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
- 08 May, 2016 3 commits
-
-
Josh Bleecher Snyder authored
The problem was fixed by the rollback in CL 22930. This CL just adds a test to prevent regressions. Fixes #15602 Change-Id: I37453f6e18ca43081266fe7f154c6d63fbaffd9b Reviewed-on: https://go-review.googlesource.com/22931 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Matthew Dempsky authored
This reverts commit 9d7c9b43. For #15602. Change-Id: I464184b05babe4cb8dedab6161efa730cea6ee2d Reviewed-on: https://go-review.googlesource.com/22930 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Joel Sing authored
Currently 386 ELF binaries are generated with dynamic symbols that have a size of zero bytes, even though the symbol in the symbol table has the correct size. Fix this by specifying the correct size when creating dynamic symbols. Issue found on OpenBSD -current, where ld.so is now producing link warnings due to mismatched symbol sizes. Fixes #15593. Change-Id: Ib1a12b23ff9159c61ac980bf48a983b86f3df256 Reviewed-on: https://go-review.googlesource.com/22912Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 07 May, 2016 4 commits
-
-
Robert Griesemer authored
The new export format keeps track of all types that are exported. If a type is seen that was exported before, only a reference to that type is emitted. The importer maintains a list of all the seen types and uses that list to resolve type references. The existing compiler infrastructure's invariants assumes that only named types are referred to before they are fully set up. Referring to unnamed incomplete types causes problems. One of the issues was #15548. Added a new internal flag 'trackAllTypes' to enable/disable this type tracking. With this change only named types are tracked. Verified that this fix also addresses #15548, even w/o the prior fix for that issue (in fact that prior fix is turned off if trackAllTypes is disabled because it's not needed). The test for #15548 covers also this change. For #15548. Change-Id: Id0b3ff983629703d025a442823f99649fd728a56 Reviewed-on: https://go-review.googlesource.com/22839 TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Elias Naur authored
Buildmode c-archive now supports position independent code for darwin/arm (in addition to darwin/arm64). Make PIC (-shared) the default for both platforms in the default buildmode. Without this change, gomobile will go install the standard library into its separate package directory without PIC support. Also add -shared to darwin/arm64 in buildmode c-archive, for symmetry (darwin/arm64 always generates position independent code). Fixes #15519 Change-Id: If27d2cbea8f40982e14df25da2703cbba572b5c6 Reviewed-on: https://go-review.googlesource.com/22920Reviewed-by: David Crawshaw <crawshaw@golang.org> Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Tal Shprecher authored
The boolean destination in an OAS2DOTTYPE expression craps out during compilation when trying to assign to a map entry because, unlike slice entries, map entries are not directly addressable in memory. The solution is to properly order the boolean destination node so that map entries are set via autotmp variables. Fixes #14678 Change-Id: If344e8f232b5bdac1b53c0f0d21eeb43ab17d3de Reviewed-on: https://go-review.googlesource.com/22833Reviewed-by: Matthew Dempsky <mdempsky@google.com> Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Elias Naur authored
In issue #13992, Russ mentioned that the heap bitmap footprint was halved but that the bitmap size calculation hadn't been updated. This presents the opportunity to either halve the bitmap size or double the addressable virtual space. This CL doubles the addressable virtual space. On 32 bit this can be tweaked further to allow the bitmap to cover the entire 4GB virtual address space, removing a failure mode if the kernel hands out memory with a too low address. First, fix the calculation and double _MaxArena32 to cover 4GB virtual memory space with the same bitmap size (256 MB). Then, allow the fallback mode for the initial memory reservation on 32 bit (or 64 bit with too little available virtual memory) to not include space for the arena. mheap.sysAlloc will automatically reserve additional space when the existing arena is full. Finally, set arena_start to 0 in 32 bit mode, so that any address is acceptable for subsequent (additional) reservations. Before, the bitmap was always located just before arena_start, so fix the two places relying on that assumption: Point the otherwise unused mheap.bitmap to one byte after the end of the bitmap, and use it for bitmap addressing instead of arena_start. With arena_start set to 0 on 32 bit, the cgoInRange check is no longer a sufficient check for Go pointers. Introduce and call inHeapOrStack to check whether a pointer is to the Go heap or stack. While we're here, remove sysReserveHigh which seems to be unused. Fixes #13992 Change-Id: I592b513148a50b9d3967b5c5d94b86b3ec39acc2 Reviewed-on: https://go-review.googlesource.com/20471Reviewed-by: Austin Clements <austin@google.com> Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 06 May, 2016 27 commits
-
-
Brad Fitzpatrick authored
Change-Id: Ifd707a4bbfcb1721655b4fce2045f3b043e66818 Reviewed-on: https://go-review.googlesource.com/22859Reviewed-by: Russ Cox <rsc@golang.org>
-
Brad Fitzpatrick authored
e.g. https://storage.googleapis.com/go-build-log/9b937dd8/linux-arm_df54a25a.log Change-Id: Ic5864c7bd840b4f0c6341f919fcbcd5c708b14e7 Reviewed-on: https://go-review.googlesource.com/22881Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
The old code assumed that the thread ID set by pthread_create would be available in the newly created thread. While that is clearly true eventually, it is not necessarily true immediately. Rather than try to pass down the thread ID, just call pthread_self in the created thread. Fixes #15576 (I hope). Change-Id: Ic07086b00e4fd5676c04719a299c583320da64a1 Reviewed-on: https://go-review.googlesource.com/22880 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Russ Cox authored
This reverts commit 9f1ccd64. For #14860. Change-Id: I63522a4dda8915dc8b972ae2e12495553ed65f09 Reviewed-on: https://go-review.googlesource.com/22861Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Might deflake the occasional linux-amd64-race failures. Change-Id: I273b0e32bb92236168eb99887b166e079799c1f1 Reviewed-on: https://go-review.googlesource.com/22858Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Brad Fitzpatrick authored
Fixes #15577 Change-Id: I5f023790a393b17235db2e66c02c2483773ddc1a Reviewed-on: https://go-review.googlesource.com/22857Reviewed-by: Russ Cox <rsc@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Russ Cox authored
This reverts commit 0ccabe2e. Change-Id: Ib1c230fb6801c0ee26f4a352b0c1130fa240a76a Reviewed-on: https://go-review.googlesource.com/22860Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Brad Fitzpatrick authored
Change-Id: Ice9c234960adc7857c8370b777a0b18e29d59281 Reviewed-on: https://go-review.googlesource.com/22853Reviewed-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
We run the external network tests on builders, but some of our builders have less-than-ideal DNS connectivity. This change continues to run the tests on all builders, but marks certain builders as flaky (network-wise), and only validates their DNS results if they got DNS results. Change-Id: I826dc2a6f6da55add89ae9c6db892b3b2f7b526b Reviewed-on: https://go-review.googlesource.com/22852Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Brad Fitzpatrick authored
I meant to delete these in CL 22850, actually. Change-Id: I0c286efd2b9f1caf0221aa88e3bcc03649c89517 Reviewed-on: https://go-review.googlesource.com/22851Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Alberto Donizetti authored
Fixes #15570 Change-Id: I95d1ac26e342c3bbf36ad1f0209711ea96eaf487 Reviewed-on: https://go-review.googlesource.com/22870Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Aliaksandr Valialkin authored
Embed noLock struct into the following types, so `go vet -copylocks` catches their copying additionally to types containing sync.Mutex: - sync.Cond - sync.WaitGroup - sync.Pool - atomic.Value Fixes #14582 Change-Id: Icb543ef5ad10524ad239a15eec8a9b334b0e0660 Reviewed-on: https://go-review.googlesource.com/22015Reviewed-by: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Richard Miller authored
This is the follow-on to CL 22610: now that it's the child instead of the parent which lists unwanted fds to close in syscall.StartProcess, plan9 no longer needs the ForkLock to protect the list from changing. The readdupdevice function is also now unused and can be removed. Change-Id: I904c8bbf5dbaa7022b0f1a1de0862cd3064ca8c7 Reviewed-on: https://go-review.googlesource.com/22842Reviewed-by: David du Colombier <0intro@gmail.com> Run-TryBot: David du Colombier <0intro@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Change-Id: Ib0ba691c4657fe18a4659753e70d97c623cb9c1d Reviewed-on: https://go-review.googlesource.com/22850 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Cherry Zhang authored
Re-enable TestFP in cmd/compile/internal/gc on mips64. Fixes #15552. Change-Id: I5c3a5564b94d28c723358f0862468fb6da371991 Reviewed-on: https://go-review.googlesource.com/22835Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ilya Tocar authored
name old time/op new time/op delta Hash8Bytes-48 271ns ± 8% 273ns ± 5% ~ (p=0.313 n=19+19) Hash320Bytes-48 1.04µs ± 7% 0.75µs ± 8% -27.66% (p=0.000 n=20+20) Hash1K-48 2.72µs ± 6% 1.75µs ± 6% -35.79% (p=0.000 n=19+20) Hash8K-48 19.9µs ± 7% 11.6µs ± 6% -41.84% (p=0.000 n=20+19) name old speed new speed delta Hash8Bytes-48 29.5MB/s ± 8% 29.3MB/s ± 5% ~ (p=0.314 n=19+19) Hash320Bytes-48 307MB/s ± 7% 424MB/s ± 8% +38.29% (p=0.000 n=20+20) Hash1K-48 377MB/s ± 6% 587MB/s ± 6% +55.76% (p=0.000 n=19+20) Hash8K-48 413MB/s ± 7% 709MB/s ± 6% +71.85% (p=0.000 n=20+19) Change-Id: I2963cf744eeb2e8191d4e4223fbf6f533a7fd405 Reviewed-on: https://go-review.googlesource.com/22607 Run-TryBot: Ilya Tocar <ilya.tocar@intel.com> Reviewed-by: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ilya Tocar authored
name old time/op new time/op delta Hash8Bytes-4 376ns ± 0% 246ns ± 0% -34.57% (p=0.000 n=20+20) Hash1K-4 5.21µs ± 0% 2.82µs ± 0% -45.83% (p=0.000 n=20+20) Hash8K-4 38.6µs ± 0% 20.8µs ± 0% -46.05% (p=0.000 n=20+20) name old speed new speed delta Hash8Bytes-4 21.2MB/s ± 0% 32.4MB/s ± 0% +52.70% (p=0.000 n=15+19) Hash1K-4 197MB/s ± 0% 363MB/s ± 0% +84.60% (p=0.000 n=20+20) Hash8K-4 212MB/s ± 0% 393MB/s ± 0% +85.36% (p=0.000 n=20+20) Change-Id: Ib50119c591074ff486d11d3566e24b691bcc6598 Reviewed-on: https://go-review.googlesource.com/22608 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Elias Naur authored
Now that darwin/arm supports position independent code, allow the binaries generated by the c-archive tests be position independent (PIE) as well. Change-Id: If0517f06e92349ada29a4e3e0a951f08b0fcc710 Reviewed-on: https://go-review.googlesource.com/22841Reviewed-by: David Crawshaw <crawshaw@golang.org> Run-TryBot: Elias Naur <elias.naur@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ilya Tocar authored
This means: VPSHUFB, VPSHUFD, VPERM2F128, VPALIGNR, VPADDQ, VPADDD, VPSRLDQ, VPSLLDQ, VPSRLQ, VPSLLQ, VPSRLD, VPSLLD, VPOR, VPBLENDD, VINSERTI128, VPERM2I128, RORXL, RORXQ. Change-Id: Ief27190ee6acfa86b109262af5d999bc101e923d Reviewed-on: https://go-review.googlesource.com/22606 Run-TryBot: Ilya Tocar <ilya.tocar@intel.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Shenghou Ma authored
Fixes #15148. Change-Id: If3b628f30521adeec1625689dbc98aaf4a9ec858 Reviewed-on: https://go-review.googlesource.com/22811Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: Minux Ma <minux@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Cherry Zhang authored
Change-Id: I9ac2ae57a00cee23d6255db02419b0a0f087d4f3 Reviewed-on: https://go-review.googlesource.com/22801Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Minux Ma <minux@golang.org>
-
Robert Griesemer authored
Accidentally checked in the version of file c.go that doesn't exhibit the bug - hence the test was not testing the bug fix. Double-checked that this version exposes the bug w/o the fix. Change-Id: Ie4dc455229d1ac802a80164b5d549c2ad4d971f5 Reviewed-on: https://go-review.googlesource.com/22837 Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Minux Ma <minux@golang.org>
-
Brad Fitzpatrick authored
Fixes #12272 Change-Id: I2115ec62ed4061084c482eb385a583a1c1909888 Reviewed-on: https://go-review.googlesource.com/22838Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Minux Ma <minux@golang.org>
-
Joe Tsai authored
The Reader and Writer have hard-coded constants regarding the offsets and lengths of certain fields in the tar format sprinkled all over. This makes it harder to verify that the offsets are correct since a reviewer would need to search for them throughout the code. Instead, all information about the layout of header fields should be centralized in one single file. This has the advantage of being both centralized, and also acting as a form of documentation about the header struct format. This method was chosen over using "encoding/binary" since that method would cause an allocation of a header struct every time binary.Read was called. This method causes zero allocations and its logic is no longer than if structs were declared. Updates #12594 Change-Id: Ic7a0565d2a2cd95d955547ace3b6dea2b57fab34 Reviewed-on: https://go-review.googlesource.com/14669Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Russ Cox authored
This can only happen when profiling and there is foreign code at the top of the g0 stack but we're not in cgo. That in turn only happens with the race detector. Fixes #13568. Change-Id: I23775132c9c1a3a3aaae191b318539f368adf25e Reviewed-on: https://go-review.googlesource.com/18322Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Mikio Hara authored
Updates #14518. This reverts commit 3e9264c9. Change-Id: I2531b04efc735b5b51ef675541172f2f5ae747d9 Reviewed-on: https://go-review.googlesource.com/22836Reviewed-by: Mikio Hara <mikioh.mikioh@gmail.com> Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Joe Tsai authored
CL/19862 (f79b50b8) recently introduced the constants SeekStart, SeekCurrent, and SeekEnd to the io package. We should use these constants consistently throughout the code base. Updates #15269 Change-Id: If7fcaca7676e4a51f588528f5ced28220d9639a2 Reviewed-on: https://go-review.googlesource.com/22097Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Joe Tsai <joetsai@digital-static.net> TryBot-Result: Gobot Gobot <gobot@golang.org>
-