Commit Graph

2833 Commits

Author SHA1 Message Date
Russ Cox c19b373c8a runtime: cpu profiling support
R=r
CC=golang-dev
https://golang.org/cl/4306043
2011-03-23 11:43:37 -04:00
Russ Cox f9fc1ddf75 runtime: fix print - no %v in C
R=r
CC=golang-dev
https://golang.org/cl/4280061
2011-03-23 11:34:03 -04:00
Russ Cox 8dee872963 runtime: os-specific types and code for setitimer
R=r
CC=golang-dev
https://golang.org/cl/4273097
2011-03-23 11:31:42 -04:00
Russ Cox ccdbb8a6c2 runtime: more stack split fixes
Found by stkcheck after 6l, 8l bug fixes Luuk is about to submit.

R=lvd
CC=golang-dev
https://golang.org/cl/4306047
2011-03-23 11:28:24 -04:00
Andrew Gerrand 39ffd546bd sync: fix example code
Fixes #1631.

R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/4303046
2011-03-23 14:24:30 +11:00
Ken Thompson a73817716a chan: allocate a new chan with one
malloc rather than nelements + 1.

R=rob
CC=golang-dev
https://golang.org/cl/4291064
2011-03-22 18:41:17 -07:00
Robert Griesemer 76061f7240 go/printer: Revert API change of CL 4274075.
Revert changes to printer.Config. Pass in the
nodeSizes map trough an internal helper function.

R=golang-dev, rsc1
CC=golang-dev
https://golang.org/cl/4309042
2011-03-22 14:14:26 -07:00
Rob Pike f492bd7012 gob: fix up ugly formatting introduced by buggy (now fixed) gofmt.
R=rsc
CC=golang-dev
https://golang.org/cl/4281065
2011-03-22 11:52:41 -07:00
Rob Pike 544cf75904 gob: use pointers in bootstrapType so interfaces behave properly
and don't lead to a nil reflect.Type.
Fixes #1626.

R=rsc
CC=golang-dev
https://golang.org/cl/4289062
2011-03-22 11:43:00 -07:00
Robert Griesemer 6684d5503a go/printer, gofmt: simplify struct formatting and respect line breaks
Also: gofmt src misc

Fixes #1627.

R=rsc
CC=golang-dev
https://golang.org/cl/4303042
2011-03-22 11:05:26 -07:00
Robert Griesemer 4a33d440b8 go/printer, gofmt: avoid exponential layout algorithm
Use memoization to avoid repeated recomputation of nested
node sizes. Speeds up testdata/slow.input by several orders
of magnitude.

- added respective test case
- added timeout to test code
- deleted some unrelated unused code

Fixes #1628.

R=rsc, r
CC=golang-dev
https://golang.org/cl/4274075
2011-03-21 17:15:59 -07:00
Brad Fitzpatrick 708013064f cgi: extra failure debugging in host_test
Trying to track down why this fails on some
people's machines.

R=rsc, adg, dsymonds
CC=golang-dev
https://golang.org/cl/4304041
2011-03-21 14:43:38 -07:00
Rob Pike 45aeca4727 time: give a helpful message when we can't set the time zone for testing.
Fixes #1625.

R=bradfitzgo, bradfitzwork, r2
CC=golang-dev
https://golang.org/cl/4295060
2011-03-21 13:48:31 -07:00
Rob Pike 319a8c45ac syscall: rename from .sh to .pl, because these files are in Perl.
Also delete references to nacl.

R=rsc, r2
CC=golang-dev
https://golang.org/cl/4275060
2011-03-21 13:02:10 -07:00
Gustavo Niemeyer 2187f43e63 exec: document dir option for Run
R=golang-dev, bradfitzwork, rsc1, peterGo
CC=golang-dev
https://golang.org/cl/4271056
2011-03-21 11:25:00 -03:00
Gustavo Niemeyer 126911dcd2 rpc: increase server_test timeout
These timeouts are breaking tests in very slow
systems every once in a while.  I've noticed
problems when compiling the Ubuntu packages for
arm, specifically.

R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/4291058
2011-03-21 00:07:22 -03:00
Andrew Gerrand 338185dabb path/filepath: fix TestEvalSymlinks when run under symlinked GOROOT
Fixes #1622.

R=rsc, bradfitzgo
CC=golang-dev
https://golang.org/cl/4287063
2011-03-21 11:24:48 +11:00
Fazlul Shahriar 19aecba1d5 flag: document Nflag function
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/4279065
2011-03-20 11:45:43 -07: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
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
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
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
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
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
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 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
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
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
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 e72156b316 remove unused labels
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/4274052
2011-03-15 14:05:07 -04:00
Brad Fitzpatrick f192891786 httptest: default the Recorder status code to 200 on a Write
This matches the real ResponseWriter behavior.

R=rsc
CC=golang-dev
https://golang.org/cl/4291048
2011-03-15 10:13:25 -07:00