- 10 Dec, 2009 6 commits
-
-
Robert Griesemer authored
R=rsc https://golang.org/cl/173045
-
Robert Griesemer authored
R=rsc, r https://golang.org/cl/172045
-
Robert Griesemer authored
R=rsc, r https://golang.org/cl/171051
-
Robert Griesemer authored
- remove use of implicit string concatenation - these appear to be the only files correctly compiling under test that used implicit string concatenation R=rsc https://golang.org/cl/172043
-
Robert Griesemer authored
R=rsc https://golang.org/cl/172042
-
Robert Griesemer authored
R=rsc https://golang.org/cl/172041
-
- 09 Dec, 2009 18 commits
-
-
Russ Cox authored
R=r https://golang.org/cl/170049
-
Russ Cox authored
R=r https://golang.org/cl/170048
-
Russ Cox authored
R=r https://golang.org/cl/170047
-
Russ Cox authored
and release.2009-12-09 (where we are) shorten tags because it is too hard to look up the full size hash and overkill anyway. R=r https://golang.org/cl/171047
-
Russ Cox authored
R=r https://golang.org/cl/171046
-
Roger Peppe authored
removed superfluous field name in lockedSource. R=r, rsc https://golang.org/cl/170043
-
Rob Pike authored
negative counts in return values. R=rsc CC=golang-dev https://golang.org/cl/170044
-
Russ Cox authored
R=r https://golang.org/cl/170042
-
Roger Peppe authored
R=r, rsc CC=golang-dev https://golang.org/cl/168041
-
Charles L. Dorian authored
UTF-8 string, Yconv() converts it into an octal sequence. If the string converted to more than 30 bytes, the str buffer would overflow. For example, 4 Greek runes became 32 bytes, 3 Hiragana runes became 36 bytes, and 2 Gothic runes became 32 bytes. In 8l, 6l and 5l the function is Sconv(). For some reason, only 5l uses the constant STRINGSZ (defined as 200) for the buffer size. R=rsc https://golang.org/cl/168045
-
Ross Light authored
Fixes #400. R=golang-dev, rsc https://golang.org/cl/167058
-
Ross Light authored
R=rsc https://golang.org/cl/165101
-
Adrian O'Grady authored
This is an adaption of the code from http://en.wikipedia.org/wiki/XTEA. The package also implements the block.Cipher interface so that it can be used with the various block modes. R=rsc https://golang.org/cl/157152
-
Russ Cox authored
then enable stack check. R=r https://golang.org/cl/165100
-
Russ Cox authored
Kei Son has completed the CLA. Yves Junqueira is a Google employee. R=r https://golang.org/cl/167057
-
Russ Cox authored
R=r https://golang.org/cl/167047
-
Devon H. O'Dell authored
FreeBSD was passing stk as the new thread's stack base, while stk is the top of the stack in go. The added check should cause a trap if this ever comes up in any new ports, or regresses in current ones. R=rsc CC=golang-dev https://golang.org/cl/167055
-
Devon H. O'Dell authored
R=rsc CC=golang-dev https://golang.org/cl/165097
-
- 08 Dec, 2009 2 commits
-
-
Russ Cox authored
Fixes #221. R=ken2 https://golang.org/cl/165086
-
Russ Cox authored
R=r https://golang.org/cl/165083
-
- 07 Dec, 2009 7 commits
-
-
Russ Cox authored
cuts working size for hello world from 6 MB to 1.2 MB. still some work to be done, but diminishing returns. R=r https://golang.org/cl/165080
-
Russ Cox authored
to provide functionality previously hacked in to reflect and gob. R=r https://golang.org/cl/165076
-
Robert Griesemer authored
R=r https://golang.org/cl/165078
-
Christopher Wedgwood authored
R=r, rsc https://golang.org/cl/165068
-
Rob Pike authored
the one-item case could be generalized easily with no cost. worth considering. R=rsc CC=golang-dev, cw https://golang.org/cl/167044
-
Roger Peppe authored
nodes in the tree are nested with respect to one another. a simple change to the Visitor interface makes it possible to do this (for example to maintain a current node-depth, or a knowledge of the name of the current function). Visit(nil) is called at the end of a node's children; this make possible the channel-based interface below, amongst other possibilities. It is still just as simple to get the original behaviour - just return the same Visitor from Visit. Here are a couple of possible Visitor types. // closure-based type FVisitor func(n interface{}) FVisitor func (f FVisitor) Visit(n interface{}) Visitor { return f(n); } // channel-based type CVisitor chan Visit; type Visit struct { node interface{}; reply chan CVisitor; }; func (v CVisitor) Visit(n interface{}) Visitor { if n == nil { close(v); } else { reply := make(chan CVisitor); v <- Visit{n, reply}; r := <-reply; if r == nil { return nil; } return r; } return nil; } R=gri CC=rsc https://golang.org/cl/166047
-
Roger Peppe authored
it's now there: http://shootout.alioth.debian.org/u32q/benchmark.php?test=chameneosredux&lang=all&box=1! R=r, rsc CC=golang-dev https://golang.org/cl/167043
-
- 06 Dec, 2009 4 commits
-
-
Rob Pike authored
a couple of cleanups. don't keep big buffers in the free list. R=rsc CC=golang-dev https://golang.org/cl/166078
-
Rob Pike authored
cleans up godoc's output for package fmt substantially. R=rsc CC=golang-dev https://golang.org/cl/165070
-
Rob Pike authored
Roughly 33% faster for simple cases, probably more for complex ones. Before: mallocs per Sprintf(""): 4 mallocs per Sprintf("xxx"): 6 mallocs per Sprintf("%x"): 10 mallocs per Sprintf("%x %x"): 12 Now: mallocs per Sprintf(""): 2 mallocs per Sprintf("xxx"): 3 mallocs per Sprintf("%x"): 5 mallocs per Sprintf("%x %x"): 7 Speed improves because of avoiding mallocs and also by sharing a bytes.Buffer between print.go and format.go rather than copying the data back after each printed item. Before: fmt_test.BenchmarkSprintfEmpty 1000000 1346 ns/op fmt_test.BenchmarkSprintfString 500000 3461 ns/op fmt_test.BenchmarkSprintfInt 500000 3671 ns/op Now: fmt_test.BenchmarkSprintfEmpty 2000000 995 ns/op fmt_test.BenchmarkSprintfString 1000000 2745 ns/op fmt_test.BenchmarkSprintfInt 1000000 2391 ns/op fmt_test.BenchmarkSprintfIntInt 500000 3751 ns/op I believe there is more to get but this is a good milestone. R=rsc CC=golang-dev, hong https://golang.org/cl/166076
-
Russ Cox authored
* broken by reflect, gob TBR=r https://golang.org/cl/166077
-
- 05 Dec, 2009 3 commits
-
-
Ian Lance Taylor authored
For 386 we use the [f]statfs64 system call, which takes three parameters: the filename, the size of the statfs64 structure, and a pointer to the structure itself. R=rsc https://golang.org/cl/166073
-
Russ Cox authored
1.9s gcc reverse-complement.c reverse-complement.go 4.5s / 3.5s original, with/without bounds checks 3.5s / 3.3s bounds check reduction 3.3s / 2.8s smarter garbage collector 2.6s / 2.3s assembler bytes.IndexByte 2.5s / 2.1s even smarter garbage collector 2.3s / 2.1s fix optimizer unnecessary spill bug 2.0s / 1.9s change loop to range (this CL) R=r https://golang.org/cl/166072
-
Russ Cox authored
* inform garbage collector about memory with no pointers in it 1.9s gcc reverse-complement.c reverse-complement.go 4.5s / 3.5s original, with/without bounds checks 3.5s / 3.3s bounds check reduction 3.3s / 2.8s smarter garbage collector 2.6s / 2.3s assembler bytes.IndexByte 2.5s / 2.1s even smarter garbage collector (this CL) R=r https://golang.org/cl/165064
-