- 19 May, 2014 4 commits
-
-
Aram Hăvărneanu authored
Discussion here: https://golang.org/cl/100490044/#msg14 LGTM=r R=r CC=golang-codereviews https://golang.org/cl/98350043
-
Russ Cox authored
Fixes #8010. LGTM=bradfitz, khr R=khr, bradfitz, dvyukov CC=golang-codereviews https://golang.org/cl/91450048
-
Dmitriy Vyukov authored
Currently freeOSMemory makes only marking phase of GC, but not sweeping phase. So recently memory is not released after freeOSMemory. Do both marking and sweeping during freeOSMemory. Fixes #8019. LGTM=khr R=golang-codereviews, khr CC=golang-codereviews, rsc https://golang.org/cl/97550043
-
Andrew Gerrand authored
LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/94610043
-
- 17 May, 2014 2 commits
-
-
Mikio Hara authored
LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/92440043
-
Dave Cheney authored
Rename Seek to seek in asm file, was overlooked in CL 99320043. LGTM=bradfitz, r R=r, rsc, bradfitz CC=golang-codereviews https://golang.org/cl/99320044
-
- 16 May, 2014 11 commits
-
-
Brad Fitzpatrick authored
Accidental change from fixing Content-Length on 204s in http://golang.org/issue/6685 earlier. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/92400047
-
Rob Pike authored
LGTM=minux.ma R=golang-codereviews, minux.ma CC=golang-codereviews https://golang.org/cl/93420046
-
Mikio Hara authored
LGTM=r R=golang-codereviews, aram, 0intro, gobot, r CC=golang-codereviews https://golang.org/cl/100490044
-
Rob Pike authored
Found by go vet. LGTM=crawshaw R=golang-codereviews, crawshaw CC=golang-codereviews https://golang.org/cl/100510044
-
Ian Lance Taylor authored
Fixes #8007. LGTM=r R=gri, r CC=golang-codereviews https://golang.org/cl/91510044
-
Rob Pike authored
TBR=rsc TBR=rsc R=rsc CC=golang-codereviews https://golang.org/cl/100500047
-
Russ Cox authored
These functions claimed to return error (an interface) and be implemented entirely in assembly, but it's not possible to create an interface from assembly (at least not easily). In reality the functions were written to return an errno uintptr despite the Go prototype saying error. When the errno was 0, they coincidentally filled out a nil error by writing the 0 to the type word of the interface. If the errno was ever non-zero, the functions would create a non-nil error that would crash when trying to call err.Error(). Luckily these functions (Seek, Time, Gettimeofday) pretty much never fail, so it was all kind of working. Found by go vet. LGTM=bradfitz, r R=golang-codereviews, bradfitz, r CC=golang-codereviews https://golang.org/cl/99320043
-
Russ Cox authored
LGTM=r R=r CC=golang-codereviews https://golang.org/cl/98290048
-
David du Colombier authored
Update #7947. LGTM=iant R=rsc, iant CC=golang-codereviews https://golang.org/cl/91500044
-
Mikio Hara authored
LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/93430044
-
Anthony Martin authored
TestLargeDefs was issuing over one million small writes to create a 7MB file (large.go). This is quite slow on Plan 9 since our disk file systems aren't very fast and they're usually accessed over the network. Buffering the writes makes the test about six times faster. Even on Linux, it's about 1.5 times faster. Here are the results on a slow Plan 9 machine: Before: % ./pack.test -test.v -test.run TestLargeDefs === RUN TestLargeDefs --- PASS: TestLargeDefs (125.11 seconds) PASS After: % ./pack.test -test.v -test.run TestLargeDefs === RUN TestLargeDefs --- PASS: TestLargeDefs (20.835 seconds) PASS LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/95040044
-
- 15 May, 2014 19 commits
-
-
Shenghou Ma authored
LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/95490043
-
Russ Cox authored
The introduction of temporaries in order.c was not quite right for two corner cases: 1) The rewrite that pushed new variables on the lhs of a receive into the body of the case was dropping the declaration of the variables. If the variables escape, the declaration is what allocates them. Caught by escape analysis sanity check. In fact the declarations should move into the body always, so that we only allocate if the corresponding case is selected. Do that. (This is an optimization that was already present in Go 1.2. The new order code just made it stop working.) Fixes #7997. 2) The optimization to turn a single-recv select into an ordinary receive assumed it could take the address of the destination; not so if the destination is _. Fixes #7998. LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/100480043
-
Guillaume J. Charmes authored
Calling tar.Reader.Read() used to work fine, but without this patch it panics. Simply return EOF to indicate the tar.Reader.Next() needs to be called. LGTM=iant, bradfitz R=golang-codereviews, bradfitz, iant, mikioh.mikioh, dominik.honnef CC=golang-codereviews https://golang.org/cl/94530043
-
Mikio Hara authored
This CL restores dropped constants not supported in OpenBSD 5.5 and tris to keep the promise of API compatibility. Update #7049 LGTM=jsing, bradfitz R=rsc, jsing, bradfitz CC=golang-codereviews https://golang.org/cl/94950043
-
Mikio Hara authored
This CL restores dropped constants not supported in OpenBSD 5.5 and tris to keep the promise of API compatibility. Update #7049 LGTM=jsing, bradfitz, rsc R=rsc, jsing, robert.hencke, minux.ma, bradfitz, iant CC=golang-codereviews https://golang.org/cl/96970043
-
Robert Griesemer authored
- use Init to establish heap invariant on a non-empty heap - use Fix to update heap after an element's properties have been changed (The old code used Init where it wasn't needed, and didn't use Fix because Fix was added after the example was written.) LGTM=bradfitz R=adonovan, bradfitz CC=golang-codereviews https://golang.org/cl/94520043
-
Russ Cox authored
for GOOS in darwin freebsd linux nacl netbsd openbsd plan9 solaris windows do for GOARCH in 386 amd64 amd64p32 arm do go vet done done These are all real mistakes being corrected, but none of them should be able to cause problems today due to the NOSPLIT on the functions. However, vet has also identified a few important problems. I'm sending this CL to get rid of the trivial 'go vet' results before attacking the real ones. LGTM=r R=golang-codereviews, r, bradfitz CC=golang-codereviews https://golang.org/cl/95460046
-
Russ Cox authored
None of these are real bugs. The variable name in the reference is not semantically meaningful, except that 'go vet' will double check the offset against the name for you. The stack sizes being corrected really are incorrect but they are also in NOSPLIT functions so they typically don't matter. Found by vet. GOOS=linux GOARCH=amd64 go vet sync/atomic GOOS=linux GOARCH=amd64p32 go vet sync/atomic GOOS=linux GOARCH=386 go vet sync/atomic GOOS=linux GOARCH=arm go vet sync/atomic GOOS=freebsd GOARCH=arm go vet sync/atomic GOOS=netbsd GOARCH=arm go vet sync/atomic LGTM=r R=r, bradfitz CC=golang-codereviews https://golang.org/cl/100500043
-
Russ Cox authored
The vet check is in CL 10470044. LGTM=bradfitz, r R=r, bradfitz CC=golang-codereviews https://golang.org/cl/91480044
-
Russ Cox authored
The GC program describing a data structure sometimes trusts the pointer base type and other times does not (if not, the garbage collector must fall back on per-allocation type information stored in the heap). Make the scanning of a pointer in an interface do the same. This fixes a crash in a particular use of reflect.SliceHeader. Fixes #8004. LGTM=khr R=golang-codereviews, khr CC=0xe2.0x9a.0x9b, golang-codereviews, iant, r https://golang.org/cl/100470045
-
Mikio Hara authored
LGTM=ruiu R=golang-codereviews, ruiu CC=golang-codereviews https://golang.org/cl/91480043
-
Russ Cox authored
Globals, function arguments, and results are special cases in registerization. Globals must be flushed aggressively, because nearly any operation can cause a panic, and the recovery code must see the latest values. Globals also must be loaded aggressively, because nearly any store through a pointer might be updating a global: the compiler cannot see all the "address of" operations on globals, especially exported globals. To accomplish this, mark all globals as having their address taken, which effectively disables registerization. If a function contains a defer statement, the function results must be flushed aggressively, because nearly any operation can cause a panic, and the deferred code may call recover, causing the original function to return the current values of its function results. To accomplish this, mark all function results as having their address taken if the function contains any defer statements. This causes not just aggressive flushing but also aggressive loading. The aggressive loading is overkill but the best we can do in the current code. Function arguments must be considered live at all safe points in a function, because garbage collection always preserves them: they must be up-to-date in order to be preserved correctly. Accomplish this by marking them live at all call sites. An earlier attempt at this marked function arguments as having their address taken, which disabled registerization completely, making programs slower. This CL's solution allows registerization while preserving safety. The benchmark speedup is caused by being able to registerize again (the earlier CL lost the same amount). benchmark old ns/op new ns/op delta BenchmarkEqualPort32 61.4 56.0 -8.79% benchmark old MB/s new MB/s speedup BenchmarkEqualPort32 521.56 570.97 1.09x Fixes #1304. (again) Fixes #7944. (again) Fixes #7984. Fixes #7995. LGTM=khr R=golang-codereviews, khr CC=golang-codereviews, iant, r https://golang.org/cl/97500044
-
Russ Cox authored
Do not compare nil and true. Fixes #7996. LGTM=r R=golang-codereviews, r CC=golang-codereviews https://golang.org/cl/91470043
-
Russ Cox authored
The function takes 32 bytes of arguments: 8 for the *block and then 3*8 for the slice. The 24 is not causing a bug (today at least) because the final word is the cap of the slice, which the assembly does not use. Identified by 'go vet std'. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/96360043
-
Alex Brainman authored
LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/100440045
-
Alex Brainman authored
Fixes #7406. LGTM=r R=golang-codereviews, r CC=golang-codereviews https://golang.org/cl/97440043
-
Alex Brainman authored
fixes windows build LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/97500043
-
Russ Cox authored
Turns out elf.File.Sections is indexed by the actual section number, not the number minus one. I don't know why I thought the -1 was necessary. Fixes objdump test (and therefore build) on ELF systems. While we're here, fix bounds on gnuDump so that we don't crash when asked to disassemble outside the text segment. May fix Windows build or at least make the failure more interesting. TBR=iant CC=golang-codereviews https://golang.org/cl/92390043
-
Guillaume J. Charmes authored
Implement the changes as suggested by rsc. Fixes #6670. LGTM=josharian, iant R=golang-codereviews, iant, josharian, mikioh.mikioh, alex, gobot CC=golang-codereviews, rsc https://golang.org/cl/83690045
-
- 14 May, 2014 4 commits
-
-
Russ Cox authored
There is some duplication here with cmd/nm. There is a TODO to address that after 1.3 is out. Update #7452 x86 disassembly works and is tested. The arm disassembler does not exist yet and is therefore not yet hooked up. LGTM=crawshaw, iant R=crawshaw, iant CC=golang-codereviews https://golang.org/cl/91360046
-
Russ Cox authored
The x86 disassembler lives in rsc.io/x86/x86asm for now. We need to figure out what should live where in the long term, but not before the 1.3 release. The completed code reviews for the disassembler are at: https://golang.org/cl/95350044 https://golang.org/cl/95300044 https://golang.org/cl/97100047 https://golang.org/cl/93110044 https://golang.org/cl/99000043 https://golang.org/cl/98990043 LGTM=crawshaw R=crawshaw, jacek.masiulaniec CC=golang-codereviews https://golang.org/cl/92360043
-
Andrew Gerrand authored
Generated by addca. R=gobot CC=golang-codereviews https://golang.org/cl/92380043
-
Mikio Hara authored
Seems like we need to drag the stack for <autogenerated>:1 on Plan 9. See http://build.golang.org/log/283b996102b833dd81c58301d78aceaa4fe9838b. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/95390043
-