Commit Graph

7815 Commits

Author SHA1 Message Date
Russ Cox eedfc445a3 build: diagnose Ubuntu's buggy copy of gold
R=iant, dsymonds
CC=golang-dev
https://golang.org/cl/4300041
2011-03-18 18:23:00 -04:00
Ian Lance Taylor 000d60ac6f net: Use preallocated buffer for kqueue/kevent.
R=rsc
CC=golang-dev
https://golang.org/cl/4293056
2011-03-18 12:48:12 -07:00
Robert Griesemer 3be0921e73 cgo: fix index-out-of-bounds bug
R=rsc
CC=golang-dev
https://golang.org/cl/4284057
2011-03-18 12:38:38 -07:00
Rob Pike 3a6c0990a4 rpc: keep free lists of Request and Response structures.
Also in the common case avoid unnecessary buffering in
the channel.
Removes 13 allocations per round trip. Now at 86, down from
144 a week ago.

R=rsc, bradfitzgo, r2, rsc1
CC=golang-dev
https://golang.org/cl/4277060
2011-03-18 11:54:36 -07:00
Ian Lance Taylor add8c8db60 net: Use preallocated buffer for epoll.
Reduces rpc test "mallocs per rpc round trip" by 4.

Gains ~8% on a localhost client/server RPC test.

R=rsc
CC=golang-dev
https://golang.org/cl/4284056
2011-03-18 11:50:19 -07:00
Yasuhiro Matsumoto 8c4a2ae6f8 godoc: No need to use filepath.IsAbs()
R=golang-dev, brainman, gri
CC=golang-dev
https://golang.org/cl/4277062
2011-03-18 09:28:23 -07:00
Yasuhiro Matsumoto b22e29d9bf godoc: fix path problem for windows.
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/4299044
2011-03-17 22:27:30 -07:00
Ken Thompson 61c83b6407 sinit.c: recursion in sinit
fixes #1617

R=rsc
CC=golang-dev
https://golang.org/cl/4277059
2011-03-17 16:47:00 -07:00
Alex Brainman bf91e827ac filepath: do not run TestEvalSymlinks on Windows
R=golang-dev, rsc1
CC=adg, golang-dev
https://golang.org/cl/4274069
2011-03-18 10:19:19 +11:00
Robert Griesemer 39a1465d11 go/parser: fix memory leak by making a copy of token literals
The scanner returns slices into the original source
for token values. If those slices are making it into
the AST and from there into other long-living data
structures (e.g. godoc search), references to the
original source are kept around involuntarily.

For the current godoc and source tree, this change reduces
memory consumption after indexing and before GC by ~92MB
or almost 30%, and by ~10MB after GC (or about 6%).

R=rsc
CC=golang-dev
https://golang.org/cl/4273072
2011-03-17 15:32:29 -07:00
Rob Pike 52b95970ca flag: fix example in doc comment.
Fixes #1615.

R=dsymonds
CC=golang-dev
https://golang.org/cl/4277058
2011-03-17 15:29:52 -07:00
Ian Lance Taylor 42bc7fc8ca net: Don't force epoll/kqueue to wake up in order to add new events.
In conjunction with the non-blocking system call CL, this
gives about an 8% performance improvement on a client/server
test running on my local machine.

R=rsc, iant2
CC=golang-dev
https://golang.org/cl/4272057
2011-03-17 13:42:40 -07:00
Alex Brainman c0f3b6c8a8 go/scanner: to interpret line comments with Windows filenames
Fixes #1614.

R=gri
CC=golang-dev
https://golang.org/cl/4290054
2011-03-17 11:49:56 -07:00
Caine Tighe b3166bcb8e os: remove fstat TODO
R=rsc
CC=golang-dev
https://golang.org/cl/3559041
2011-03-17 13:57:36 -04:00
Rob Pike 9ad091e178 gob: eliminate two more allocations in decode.
- just an oversight; we were reallocating a buffer.
- use unsafe to avoid allocating storage for a string twice.

R=rsc
CC=golang-dev
https://golang.org/cl/4290056
2011-03-17 10:47:42 -07:00
Russ Cox 2ca46a789b time: isolate syscall reference in sys.go
R=dsymonds
CC=golang-dev
https://golang.org/cl/4291052
2011-03-17 13:46:05 -04:00
Evan Shaw bc35379763 .hgignore: Ignore all goinstalled packages
R=golang-dev, niemeyer, rsc1, rog, rsc
CC=golang-dev
https://golang.org/cl/4285047
2011-03-17 01:45:05 -04:00
Andrew Gerrand 393ea2dfa8 doc: mention godoc in "implements" FAQ
R=r
CC=golang-dev
https://golang.org/cl/4248066
2011-03-17 16:37:34 +11:00
Andrew Gerrand 75d4cb6a02 path/filepath: add EvalSymlinks function
R=rsc, niemeyer, r2, rog, iant2, r
CC=golang-dev
https://golang.org/cl/4235060
2011-03-17 16:36:37 +11:00
Andrew Gerrand 929449ddaf doc: explain release and weekly tags in install.html
R=r
CC=golang-dev
https://golang.org/cl/4272058
2011-03-17 16:33:10 +11:00
Ian Lance Taylor 4fd41e494a syscall: Permit non-blocking syscalls.
Permit system calls to be designated as non-blocking, meaning
that we simply call them without involving the scheduler.

This change by itself is mostly performance neutral.  In
combination with a following change to the net package there
is a performance advantage.

R=rsc, dfc, r2, iant2, rsc1
CC=golang-dev
https://golang.org/cl/4278055
2011-03-16 19:03:01 -07:00
Russ Cox e39dc76884 gc: fix crash when using -u
R=ken2
CC=golang-dev
https://golang.org/cl/4278056
2011-03-16 21:05:40 -04:00
Rob Pike 90f3f91786 gob: remove a few more allocations.
- use enc.err and dec.err instead of return values in deferred error catcher
- replace io.WriteString with buffer.WriteString

now at:
mallocs per encode of type Bench: 7
mallocs per decode of type Bench: 8

R=rsc
CC=golang-dev
https://golang.org/cl/4277057
2011-03-16 18:03:13 -07:00
Yasuhiro Matsumoto 3d1afb7680 path: work for windows.
R=brainman, rsc, rsc1
CC=golang-dev
https://golang.org/cl/4249064
2011-03-17 10:41:23 +11:00
Andrew Gerrand 4bd0a54435 gofix: httpserver - rewrite rw.SetHeader to rw.Header.Set
R=rsc
CC=golang-dev
https://golang.org/cl/4271048
2011-03-17 09:59:18 +11:00
Andrew Gerrand 5dd0869bf5 codereview: permit CLs of the form weekly.DATE
gobuilder: recognize CLs of the form weekly.DATE

R=rsc, r
CC=golang-dev
https://golang.org/cl/4282052
2011-03-17 09:11:08 +11:00
Brad Fitzpatrick a93f70c21a http: add NewProxyClientConn
This just returns a ClientConn suitable for writing
proxy requests.  To be used in Transport.

R=rsc, petar-m
CC=golang-dev
https://golang.org/cl/4290052
2011-03-16 14:32:35 -07:00
Robert Griesemer 7ea8cdaabd go/ast: merge CaseClause and TypeCaseClause
(per rsc's suggestion)

R=rsc
CC=golang-dev
https://golang.org/cl/4276057
2011-03-16 14:25:59 -07:00
Alex Brainman de811cc04c go/scanner: use filepath
R=gri
CC=golang-dev
https://golang.org/cl/4280048
2011-03-16 10:38:03 -07:00
Rob Pike b8e4fbb79c testing: compile regexp only once
The -test.run and -test.bench flags were compilng the regexp for ever test
function, which was mucking up memory profiles.   Add a simple wrapper
to save the compiled state so that the regexp is compiled only once for
each flag.

R=rsc
CC=golang-dev
https://golang.org/cl/4274063
2011-03-16 10:32:21 -07:00
Rob Pike d3c61fc214 testing: fix build
Dependency on bufio crept in during last CL; this breaks the cycle.
Also add a missing '-' to the documentation.

R=rsc
CC=golang-dev
https://golang.org/cl/4274061
2011-03-16 10:12:25 -07:00
Rob Pike afaa30694c testing: add -test.memprofile and -test.memprofilerate flags.
These allow a test to generate memory profiles automatically.

R=golang-dev, rsc1
CC=golang-dev
https://golang.org/cl/4273064
2011-03-16 09:53:58 -07:00
Adam Langley df184ff2f0 crypto/openpgp: add DSA signature support.
R=bradfitzgo, nsz
CC=golang-dev
https://golang.org/cl/4280041
2011-03-16 10:50:06 -04:00
Adam Langley 7b094182e4 crypto/ecdsa: truncate hash values.
There is some disagreement about how to deal with hash values larger
than the curve order size. We choose to follow OpenSSL's lead here.

R=bradfitzgo, r
CC=golang-dev
https://golang.org/cl/4273059
2011-03-16 10:42:41 -04:00
Andrew Gerrand e44c057369 doc: fix line wrapping for release.html
R=r
CC=golang-dev
https://golang.org/cl/4281052
2011-03-16 16:36:18 +11:00
Andrew Gerrand ad8fc8891e tag weekly.2011-03-15
R=r
CC=golang-dev
https://golang.org/cl/4289048
2011-03-16 16:26:46 +11:00
Andrew Gerrand f538f2432e weekly.2011-03-15
R=r
CC=golang-dev
https://golang.org/cl/4272052
2011-03-16 16:24:08 +11:00
Rob Pike eb864e92db gob: keep free lists of encoder and decoder states.
Avoids 3 mallocs in a round trip encoding/decoding a struct.

R=rsc, rsc1
CC=golang-dev
https://golang.org/cl/4278052
2011-03-15 21:30:07 -07:00
Alex Brainman bcd747204d gofix: fix godoc doc
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4290049
2011-03-16 15:20:46 +11:00
Russ Cox 35c274a0da gofix: fix procattr registration, tests
R=adg
CC=golang-dev
https://golang.org/cl/4275054
2011-03-16 13:58:09 +11:00
Russ Cox d7106f280d gofix: procattr
R=adg
CC=golang-dev
https://golang.org/cl/4274059
2011-03-15 22:33:57 -04:00
Robert Griesemer bcd6c733b2 go/printer: output tuning for gofix
If braces don't have position information for a composite
literal, don't assume alignment of key:value pairs under
the (wrong) assumption that there may be multiple lines.

R=rsc
CC=golang-dev
https://golang.org/cl/4297043
2011-03-15 17:45:16 -07:00
Rob Pike 0463bd6cd7 gob: move benchmarks to a new timing_test.go file.
Add malloc counts for encode and decode.

R=rsc
CC=golang-dev
https://golang.org/cl/4290048
2011-03-15 17:14:02 -07:00
Russ Cox b04209ca97 debug/proc: fix build
R=r
CC=golang-dev
https://golang.org/cl/4273060
2011-03-15 19:39:50 -04:00
Rob Pike bc34cda742 rpc: add the ability to write out a memory profile during testing.
R=rsc, dsymonds
CC=golang-dev
https://golang.org/cl/4290047
2011-03-15 14:20:30 -07:00
Rob Pike f11f032486 rpc: add benchmarks
On my mac:
mallocs per rpc round trip: 144
rpc.BenchmarkEndToEnd	   10000	    228244 ns/op

Room for improvement.

R=rsc
CC=golang-dev
https://golang.org/cl/4274058
2011-03-15 13:09:11 -07:00
Evan Shaw c3254bbef9 lib9, libmach: Change GOOS references to GOHOSTOS
This makes it possible to build Windows binaries on non-Windows OSes.

R=golang-dev, rsc1, rsc
CC=golang-dev
https://golang.org/cl/4271046
2011-03-15 14:42:18 -04:00
Roger Peppe aa55c05213 os, syscall: add ProcAttr type. Change StartProcess etc. to use it.
The Windows code is untested.

R=rsc, gri, brainman, rsc1
CC=golang-dev
https://golang.org/cl/4253052
2011-03-15 14:41:19 -04:00
Russ Cox a34f1bbb22 gofix: new command for updating code to new release
R=bradfitzgo, dsymonds, r, gri, adg
CC=golang-dev
https://golang.org/cl/4282044
2011-03-15 14:15:41 -04:00
Russ Cox 66f09fd459 gc: diagnose unused labels
R=ken2
CC=golang-dev
https://golang.org/cl/4287047
2011-03-15 14:05:37 -04:00