- 15 Apr, 2015 13 commits
-
-
Michael Hudson-Doyle authored
By removing type slice, renaming type sliceStruct to type slice and whacking until it compiles. Has a pleasing net reduction of conversions. Fixes #10188 Change-Id: I77202b8df637185b632fd7875a1fdd8d52c7a83c Reviewed-on: https://go-review.googlesource.com/8770Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Michael Hudson-Doyle authored
We forgot to add the !gccgo tag to cpuid_386.s. Change-Id: I2de2ed92ac9686c9365cb37cd29121fa98c2bf37 Reviewed-on: https://go-review.googlesource.com/8960Reviewed-by: Dave Cheney <dave@cheney.net> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Rob Pike authored
Change-Id: Ia0d7c2f08f8f124bcd62c7f9744227812d68903d Reviewed-on: https://go-review.googlesource.com/8941Reviewed-by: Rob Pike <r@golang.org>
-
Rob Pike authored
When a reflect.Value is passed to Printf (etc.), fmt called the String method, which does not disclose its contents. To get the contents, one could call Value.Interface(), but that is illegal if the Value is not exported or otherwise forbidden. This CL improves the situation with a trivial change to the fmt package: when we see a reflect.Value as an argument, we treat it exactly as we treat a reflect.Value we make inside the package. This means that we always print the contents of the Value as if _that_ was the argument to Printf. This is arguably a breaking change but I think it is a genuine improvement and no greater a break than many other tweaks we have made to formatted output from this package. Fixes #8965. Change-Id: Ifc2a4ce3c1134ad5160e101d2196c22f1542faab Reviewed-on: https://go-review.googlesource.com/8731Reviewed-by: roger peppe <rogpeppe@gmail.com> Reviewed-by: Russ Cox <rsc@golang.org>
-
Rob Pike authored
This trivial addition to the io package makes it easy to control the buffer size and allocation properties of io.Copy. Change-Id: Ica1a6bd015e429d4e655bc0c6f66cea21c454acf Reviewed-on: https://go-review.googlesource.com/8730Reviewed-by: Russ Cox <rsc@golang.org>
-
Dave Cheney authored
Fixes #9855 Use an architectural zero register as the source for zeroing, if available. Change-Id: Ie5b4ba4e3d356c6f892bfd1cebd14d5152bdeeb0 Reviewed-on: https://go-review.googlesource.com/8722Reviewed-by: Keith Randall <khr@golang.org>
-
Mikio Hara authored
Change-Id: I63053c45081f47ba736720a78d85c31c13767891 Reviewed-on: https://go-review.googlesource.com/8642Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Mikio Hara authored
Change-Id: Icaac9a48a3b9a3c5542235162e21ab8303592965 Reviewed-on: https://go-review.googlesource.com/8641Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Dave Cheney authored
Fixes #10450 runtime.cputicks is called from runtime.exitsyscall and must not split the stack. cputicks is implemented in several ways and the NOSPLIT annotation was missing from a few of these. Change-Id: I5cbbb4e5888c5d298fe2fef240782d0e49f59af8 Reviewed-on: https://go-review.googlesource.com/8939Reviewed-by: Aram Hăvărneanu <aram@mgk.ro>
-
Alex Brainman authored
When Windows calls externalthreadhandler it expects to receive return value in AX. We don't set AX anywhere. Change that. Store ctrlhandler1 and profileloop1 return values into AX before returning from externalthreadhandler. Fixes #10215. Change-Id: Ied04542cc3ebe7d4a26660e970f9f78098143591 Reviewed-on: https://go-review.googlesource.com/8901Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Alex Brainman <alex.brainman@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Nigel Tao authored
http://www.w3.org/TR/PNG/#5ChunkOrdering disallows them. Fixes #10423 Change-Id: I3399ce53dc8b41b1b5f0b906a5912e6efd80418f Reviewed-on: https://go-review.googlesource.com/8905Reviewed-by: Rob Pike <r@golang.org>
-
Robert Griesemer authored
- The go/importer package provides access to compiler-specific importers. - Adjusted go/internal/gcimporter and go/types as needed. - types.Check was removed - not much simpler than calling types.Config.Check. - Package "unsafe" is now handled by the type checker; importers are not called for it anymore. - In std lib tests, re-use importer for faster testing (no need to re-import previously imported packages). - Minor cleanups. The code still needs cleanups before submitting. Change-Id: Idd456da2e9641688fe056504367348926feb0755 Reviewed-on: https://go-review.googlesource.com/8767Reviewed-by: Alan Donovan <adonovan@google.com> Run-TryBot: Robert Griesemer <gri@golang.org>
-
Josh Bleecher Snyder authored
Use environment variables to allow set-and-forget. Add a script to attempt to autodetect codesign info. Change-Id: Ic56b9c5f097b1a4117ebb89c408bc333d91f581d Reviewed-on: https://go-review.googlesource.com/8910Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
- 14 Apr, 2015 13 commits
-
-
Josh Bleecher Snyder authored
No functional changes. Passes toolstash -cmp. Change-Id: I4fba0c248645c3910ee3f7fc99dacafb676c5dc2 Reviewed-on: https://go-review.googlesource.com/8911Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Austin Clements authored
A G will be preempted if it runs for 10ms without blocking. Currently this constant is hard-coded in retake. Move it to a global const. We'll use the time slice length in scheduling background GC. Change-Id: I79a979948af2fad3afe5df9d4af4062f166554b7 Reviewed-on: https://go-review.googlesource.com/8838Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Rick Hudson <rlh@golang.org>
-
Austin Clements authored
mHeap_ReclaimList is asked to reclaim at least npages pages, but it counts the number of spans reclaimed, not the number of pages reclaimed. The number of spans reclaimed is strictly larger than the number of pages, so this is not strictly wrong, but it is forcing more reclamation than was intended by the caller, which delays large allocations. Fix this by increasing the count by the number of pages in the swept span, rather than just increasing it by 1. Fixes #9048. Change-Id: I5ae364a9837a6012e68fcd431bba000340cfd50c Reviewed-on: https://go-review.googlesource.com/8920Reviewed-by: Dmitry Vyukov <dvyukov@google.com> Reviewed-by: Rick Hudson <rlh@golang.org>
-
Austin Clements authored
Commit d7e0ad4b removed the next_gc manipulation from mSpan_Sweep, but left in the traceNextGC() for recording the updated next_gc value. Remove this now unnecessary call. Change-Id: I28e0de071661199be9810d7bdcc81ce50b5a58ae Reviewed-on: https://go-review.googlesource.com/8894Reviewed-by: Dmitry Vyukov <dvyukov@google.com> Reviewed-by: Rick Hudson <rlh@golang.org>
-
Marius Nuennerich authored
Fixes #10451 Change-Id: I15ed777e9a4a4e1ba1178d07fcbe0ab4bf0d9e50 Reviewed-on: https://go-review.googlesource.com/8936Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
See also golang-dev discussion: https://groups.google.com/d/msg/golang-dev/Nk9gnTINlTg/SV8rBt-2__kJ Change-Id: I49edd98d73400c1757b6085dec86752de569c01a Reviewed-on: https://go-review.googlesource.com/8923Reviewed-by: Rob Pike <r@golang.org>
-
Rob Pike authored
Even if requested, there is no .go file for unsafe - it comes from the compiler - so referencing its cover variables will break the compilation in a command like go test -coverpkg=all fmt Fixes #10408. Change-Id: If92658ef6c29dc020f66ba30b02eaa796f7205e0 Reviewed-on: https://go-review.googlesource.com/8891Reviewed-by: Russ Cox <rsc@golang.org>
-
Dmitry Vyukov authored
Fixes #10441 Compiler crashed as: panic: runtime error: invalid memory address or nil pointer dereference goroutine 1 [running]: cmd/internal/gc.haspointers(0x0, 0xffffffffffffffff) src/cmd/internal/gc/reflect.go:623 +0x1f cmd/internal/gc.escwalk(0x20c82dc00, 0xffffffffffffffff, 0x20c82dda0, 0x20c835520) src/cmd/internal/gc/esc.go:1291 +0x14aa cmd/internal/gc.escwalk(0x20c82dc00, 0xffffffffffffffff, 0x20c82dda0, 0x20beac340) src/cmd/internal/gc/esc.go:1386 +0x836 while evaluating haspointers of the fake OADDR node here: leaks = level <= 0 && dst.Escloopdepth < src.Escloopdepth || level < 0 && dst == &e.funcParam && haspointers(src.Type) Change-Id: I13c23fced52e8fcd0ae1df81b374df8632eb7790 Reviewed-on: https://go-review.googlesource.com/8932Reviewed-by: David Chase <drchase@google.com> Run-TryBot: Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
David Crawshaw authored
With the new buildmodes c-archive and c-shared, it is possible for a cgo call to come in early in the lifecycle of a Go program. Calls before the runtime has been initialized are caught by _cgo_wait_runtime_init_done. However a call can come in after the runtime has initialized, but before the program's package init functions have finished running. To avoid this cgocallback checks m.ncgo to see if we are on a thread running Go. If not, we may be a foreign thread and it blocks until main_init is complete. Change-Id: I7a9f137fa2a40c322a0b93764261f9aa17fcf5b8 Reviewed-on: https://go-review.googlesource.com/8897Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: David Crawshaw <crawshaw@golang.org>
-
David Crawshaw authored
Avoids shadowing the builtin channel close function. Change-Id: I7a729b0937c8248fe27222be61318a88db995eee Reviewed-on: https://go-review.googlesource.com/8898Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: David Crawshaw <crawshaw@golang.org>
-
Nigel Tao authored
call unreadByteStuffedByte. If ensureNBits was due to an io.EOF that was translated to jpeg.errShortHuffmanData, then we may have read no bytes, so there is no byte-stuffed-byte to unread. Fixes #10387 Change-Id: I39a3842590c6cef2aa48943288d52f603338b44d Reviewed-on: https://go-review.googlesource.com/8841Reviewed-by: Rob Pike <r@golang.org>
-
Brad Fitzpatrick authored
Change-Id: Ie5fe5cf3e2926ba4f91271bd47f3f998c26e003e Reviewed-on: https://go-review.googlesource.com/8914Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
-
Brad Fitzpatrick authored
The memory model has been clarified since. This is legal and doesn't need justification. Change-Id: I60f9938503f86f52bb568ca1a99ac721ee72cee5 Reviewed-on: https://go-review.googlesource.com/8913Reviewed-by: Mikio Hara <mikioh.mikioh@gmail.com>
-
- 13 Apr, 2015 14 commits
-
-
Shenghou Ma authored
Change-Id: Idfb20bfe130d9a54d9f5aae8eab8a34655d30610 Reviewed-on: https://go-review.googlesource.com/8865Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Srdjan Petrovic authored
Already supported platforms are linux/amd64 and android/arm. Running -buildmode=c-shared on linux/arm is equivalent to: -ldflags "-shared" -asmflags "-shared" Change-Id: Ifdb267f1d6508157f236be912fa369440172d161 Reviewed-on: https://go-review.googlesource.com/8895Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
http://gcc.gnu.org/PR65755Ian Lance Taylor authored
Change-Id: Ic35dff4c9a7fc6716ef9d5553a7b1769bed9be01 Reviewed-on: https://go-review.googlesource.com/8892Reviewed-by: Minux Ma <minux@golang.org>
-
Mikio Hara authored
On darwin, /tmp and /var directories are usually linked to /private. % cd $TMPDIR; pwd -L /var/.../T % pwd -P /private/var/.../T Change-Id: I277ff2d096344d9a80e6004a83e9fc3e1716348c Reviewed-on: https://go-review.googlesource.com/8842Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
Srdjan Petrovic authored
Follows http://golang.org/cl/8454, a similar CL for arm architectures. This CL involves android-specific changes, namely, synthesizing argv/auxv, as android doesn't provide those to the init functions. This code is based on crawshaw@ android code in golang.org/x/mobile. Change-Id: I32364efbb2662e80270a99bd7dfb1d0421b5417d Reviewed-on: https://go-review.googlesource.com/8457Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
Rob Pike authored
Change-Id: I392cedc49847c8ea0daa38024fca97a289d805af Reviewed-on: https://go-review.googlesource.com/8890Reviewed-by: Rob Pike <r@golang.org>
-
Rob Pike authored
The documentation is clear that formats like %02x applied to a byte slice are per-element, so the result should be nothing if the slice is empty. It's not, because the top-level padding routine is called. It shouldn't be: the loop does the padding for us. Fixes #10430. Change-Id: I04ea0e804c0f2e70fff3701e5bf22acc90e890da Reviewed-on: https://go-review.googlesource.com/8864Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
Update #10417. Change-Id: Ibfbdd05358f696a37217eef160f71b14a468ff86 Reviewed-on: https://go-review.googlesource.com/8788Reviewed-by: Rob Pike <r@golang.org>
-
Dave Cheney authored
Fixes #10092 This change makes it possible to use gccgo 5 as the GOROOT_BOOTSTRAP compiler. Change-Id: Ie3a312781ac1a09ea77f95b5a78c9488d437e0aa Reviewed-on: https://go-review.googlesource.com/8809 Run-TryBot: Dave Cheney <dave@cheney.net> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
David Crawshaw authored
Change-Id: Ifbcc0eb24834f2f7d3b160d1dc911209723d9797 Reviewed-on: https://go-review.googlesource.com/8863Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
David Crawshaw authored
The -lldb flag makes it easy to use go run and end up in a debugging session on darwin/arm. Change-Id: I556f93e950086a7dff4839f301b9c55f7579f87b Reviewed-on: https://go-review.googlesource.com/8024Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
-
Srdjan Petrovic authored
Adds the runtime initialization flow for arm akin to amd64. In particular,we use the library initialization entry point to: - create a new OS thread and run the "regular" runtime init stack on that thread - return immediately from the main (i.e., loader) thread - at the first CGO invocation, we wait for the runtime initialization to complete. Verified to work on a Raspberry Pi and an Android phone. Change-Id: I32f39228ae30a03ce9569287f234b305790fecf6 Reviewed-on: https://go-review.googlesource.com/8455Reviewed-by: David Crawshaw <crawshaw@golang.org> Run-TryBot: Srdjan Petrovic <spetrovic@google.com>
-
David Crawshaw authored
Change-Id: I1668a6885c45180ff88fe673d04cec7eba395ee7 Reviewed-on: https://go-review.googlesource.com/8861Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Srdjan Petrovic authored
Related to issue #10410 For some reason, any non-trivial code in _cgo_wait_runtime_init_done (even fprintf()) will crash that call. If anybody has any guess why this is happening, please let me know! For now, I'm clearing the functions for ppc64, as it's currently not used. Change-Id: I1b11383aaf4f9f9a16f1fd6606842cfeedc9f0b3 Reviewed-on: https://go-review.googlesource.com/8766Reviewed-by: David Crawshaw <crawshaw@golang.org> Run-TryBot: Srdjan Petrovic <spetrovic@google.com>
-