]>
Cypherpunks repositories - gostls13.git/log
Russ Cox [Mon, 25 Jun 2012 21:18:44 +0000 (17:18 -0400)]
A+C: Amir Mohammad Saied, Thomas Alan Copeland (both individual CLA)
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6330059
Robert Griesemer [Mon, 25 Jun 2012 20:58:28 +0000 (13:58 -0700)]
gofmt: handle comments correctly in rewrites
R=rsc
CC=golang-dev
https://golang.org/cl/
6294076
Micah Stetson [Mon, 25 Jun 2012 20:03:18 +0000 (16:03 -0400)]
encoding/json: simplify (*decodeState).indirect
Removes an incorrect code comment and some superfluous variables.
The comment I removed says that struct fields which implement
Unmarshaler must be pointers, even if they're in an addressable
struct. That's not the case, and there's already a test in decode_test.go
that demonstrates as much.
Encoding/json has quite a few assignments of reflect.Values to extra
variables – things like "iv := v" when there's no need to make a copy. I
think these are left over from a previous version of the reflect API. If they
aren't wanted, I wouldn't mind going through the package and getting
rid of the rest of them.
R=rsc
CC=golang-dev
https://golang.org/cl/
6318047
Jan Ziak [Mon, 25 Jun 2012 20:00:35 +0000 (16:00 -0400)]
encoding/csv, encoding/xml: report write errors
Fixes #3773.
R=bradfitz, rsc
CC=golang-dev
https://golang.org/cl/
6327053
Robert Griesemer [Mon, 25 Jun 2012 18:28:24 +0000 (11:28 -0700)]
spec: clarify receive operator
- receiving from a closed channel returns immediately
- in the ,ok form, the 2nd result is of type bool, not
just boolean (gc and ggcgo agree).
Per dsymonds' suggestion.
R=r, rsc, ken, iant, dsymonds
CC=golang-dev
https://golang.org/cl/
6333057
Robert Griesemer [Mon, 25 Jun 2012 18:27:54 +0000 (11:27 -0700)]
go/ast: minor comment maps API change
This is a new, not yet committed API.
- Changed NewCommentMap to be independent of
*File nodes and more symmetric with the
Filter and Comments methods.
- Implemented Update method for use in
AST modifications.
- Implemented String method for debugging
R=rsc
CC=golang-dev
https://golang.org/cl/
6303086
Jan Ziak [Mon, 25 Jun 2012 18:08:09 +0000 (14:08 -0400)]
exp/inotify: prevent data race
Fixes #3713.
R=bradfitz, rsc
CC=golang-dev
https://golang.org/cl/
6331055
Brad Fitzpatrick [Mon, 25 Jun 2012 15:54:36 +0000 (08:54 -0700)]
net/http: speed up Header.WriteSubset
A few performance improvements, but without the stack sorting
change to avoid allocating, which is instead waiting on better
escape analysis.
R=rsc
CC=golang-dev
https://golang.org/cl/
6265047
Dave Cheney [Mon, 25 Jun 2012 13:01:34 +0000 (23:01 +1000)]
runtime: remove memset/memclr shim
This CL resolves https://golang.org/cl/
6300043 /#msg3
by renaming memset_arm.s to memclr_arm.s and merging the function
of the same name from asm_arm.s.
R=minux.ma, rsc
CC=golang-dev
https://golang.org/cl/
6336054
Dmitriy Vyukov [Mon, 25 Jun 2012 07:08:09 +0000 (11:08 +0400)]
runtime: fix potential GC deadlock
The issue seems to not be triggered right now,
but I've seen the deadlock after some other legal
modifications to runtime.
So I think we are safer this way.
R=rsc, r
CC=golang-dev
https://golang.org/cl/
6339051
Russ Cox [Sun, 24 Jun 2012 23:47:50 +0000 (19:47 -0400)]
runtime: detect hash map collision problems
This can only happen if the hash function we're using is getting
far more than it's fair share of collisions, but that has happened
to us repeatedly as we've expanded the allowed use cases for
hash tables (issue 1544, issue 2609, issue 2630, issue 2883, issue 3695).
Maybe this will help the next time we try something new.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
6306083
Charles L. Dorian [Sun, 24 Jun 2012 23:39:07 +0000 (19:39 -0400)]
math: improve Atan, Asin and Acos accuracy
pkg/math/all_test.go tests Atan (and therefore Asin and Acos) to a
relative accuracy of 4e-16, but the test vector misses values where
the old algorithm was in error by more than that. For example:
x newError oldError
0.
414215746 1.41e-16 -4.24e-16
0.
414216076 1.41e-16 -4.24e-16
0.
414217632 1.41e-16 -4.24e-16
0.
414218770 1.41e-16 -4.24e-16
0.
414225466 0 -5.65e-16
0.
414226244 1.41e-16 -4.24e-16
0.
414228756 0 -5.65e-16
0.
414235089 0 -5.65e-16
0.
414237070 0 -5.65e-16
R=rsc, golang-dev
CC=golang-dev
https://golang.org/cl/
6302093
Han-Wen Nienhuys [Sun, 24 Jun 2012 23:34:06 +0000 (19:34 -0400)]
os: make POSIX StartProcess work with chroot again.
Skip directory check in startProcess in the presence of
SysProcAttr.
Fixes #3649.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6297083
Russ Cox [Sun, 24 Jun 2012 23:32:37 +0000 (19:32 -0400)]
CONTRIBUTORS: add Han-Wen Nienhuys (Google CLA)
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
6327054
Jan Ziak [Sun, 24 Jun 2012 23:23:09 +0000 (19:23 -0400)]
test/bench/shootout: remove dependency on C libraries in test mode
Fixes #3732.
R=golang-dev
CC=golang-dev
https://golang.org/cl/
6335053
Jan Ziak [Sun, 24 Jun 2012 23:22:48 +0000 (19:22 -0400)]
exp/inotify: prevent data race during testing
Fixes #3714.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6341047
Dave Cheney [Sun, 24 Jun 2012 22:28:30 +0000 (08:28 +1000)]
runtime: avoid r9/r10 during memmove
Fixes #3718.
Requires CL
6300043 .
R=rsc, minux.ma, extraterrestrial.neighbour
CC=golang-dev
https://golang.org/cl/
6305100
Dave Cheney [Sun, 24 Jun 2012 21:59:50 +0000 (07:59 +1000)]
runtime: avoid r9/r10 during memset
Partially fixes issue 3718.
R=golang-dev, rsc, minux.ma
CC=golang-dev
https://golang.org/cl/
6300043
David Symonds [Sun, 24 Jun 2012 19:23:51 +0000 (12:23 -0700)]
flag: fix indexing doc.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
6341046
Brad Fitzpatrick [Sun, 24 Jun 2012 17:41:12 +0000 (10:41 -0700)]
net/http: fix doc inaccuracy and typo; tighten test
Note url.Error wrapping, and s/issue/issuing/.
Fixes #3724
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
6294093
Shenghou Ma [Sat, 23 Jun 2012 17:41:17 +0000 (01:41 +0800)]
runtime: fix struct Sigaction for Linux/386
We need to use kernel headers to generate defs_linux_$GOARCH.h
R=golang-dev, dave, alex.brainman, iant
CC=golang-dev
https://golang.org/cl/
6296091
David G. Andersen [Fri, 22 Jun 2012 22:07:22 +0000 (15:07 -0700)]
net/rpc: fix typo in documentation, clarify semantics of error return
Several of my students were confused by trying to use both the error
return and a reply return, so I figured it was worth explicitly clarifying
that returning an error overrides the reply.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
6327051
David G. Andersen [Fri, 22 Jun 2012 21:43:41 +0000 (14:43 -0700)]
encoding/json: fix minor typo in documentation for Marshal
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
6325053
Andrew Gerrand [Fri, 22 Jun 2012 17:22:01 +0000 (10:22 -0700)]
doc: put A Tour of Go video on the front page
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6337047
Mats Lidell [Thu, 21 Jun 2012 17:01:54 +0000 (13:01 -0400)]
misc/emacs: Replace replace-{string|regexp} for XEmacs compatible code
Use code to be used in lisp programs as suggested in the doc strings for
replace-{string|regexp}. Bonus: This code works for XEmacs.
R=golang-dev, sameer, jmeurin
CC=golang-dev
https://golang.org/cl/
6296073
Adam Langley [Wed, 20 Jun 2012 20:18:56 +0000 (16:18 -0400)]
crypto/x509: add extended key usage support.
Flame motivated me to get around to adding extended key usage support
so that code signing certificates can't be used for TLS server
authentication and vice versa.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6304065
Marcel van Lohuizen [Tue, 19 Jun 2012 18:34:56 +0000 (11:34 -0700)]
exp/locale/collate: added regression test for collate package
based on UCA test files.
R=r
CC=golang-dev
https://golang.org/cl/
6216056
Shenghou Ma [Tue, 19 Jun 2012 17:22:03 +0000 (01:22 +0800)]
doc/articles/slices_usage_and_internals: fix typo
Fixes #3753.
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/
6304097
Shenghou Ma [Tue, 19 Jun 2012 17:17:03 +0000 (01:17 +0800)]
runtime: fix struct Sigaction for Linux/ARM
if we were to use sizeof(sa.sa_mask) instead of 8 as the last argument
to rt_sigaction, we would have already fixed this bug, so also updated
Linux/386 and Linux/amd64 files to use that; also test the return value
of rt_sigaction.
R=dave, rsc
CC=golang-dev
https://golang.org/cl/
6297087
Brad Fitzpatrick [Tue, 19 Jun 2012 16:20:41 +0000 (09:20 -0700)]
net/http: make client await response concurrently with writing request
If the server replies with an HTTP response before we're done
writing our body (for instance "401 Unauthorized" response), we
were previously ignoring that, since we returned our write
error ("broken pipe", etc) before ever reading the response.
Now we read and write at the same time.
Fixes #3595
R=rsc, adg
CC=golang-dev
https://golang.org/cl/
6238043
Brad Fitzpatrick [Tue, 19 Jun 2012 16:10:14 +0000 (09:10 -0700)]
net/http: clarify client return values in docs
Also, fixes one violation found during testing where both
response and error could be non-nil when a CheckRedirect test
failed. This is arguably a minor API (behavior, not
signature) change, but it wasn't documented either way and was
inconsistent & non-Go like. Any code depending on the old
behavior was wrong anyway.
R=adg, rsc
CC=golang-dev
https://golang.org/cl/
6307088
Robert Griesemer [Tue, 19 Jun 2012 04:56:41 +0000 (21:56 -0700)]
go/ast: multiple "blank" imports are permitted
R=rsc, dsymonds
CC=golang-dev
https://golang.org/cl/
6303099
Marcel van Lohuizen [Tue, 19 Jun 2012 00:43:05 +0000 (17:43 -0700)]
bytes: fixed typo.
R=r
CC=golang-dev
https://golang.org/cl/
6301096
Brad Fitzpatrick [Mon, 18 Jun 2012 19:54:36 +0000 (12:54 -0700)]
net/url: sort keys in Encode; don't enumerate map randomly
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/
6303098
Adam Langley [Mon, 18 Jun 2012 15:08:31 +0000 (11:08 -0400)]
A+C: Christine Hansmann (individual CLA)
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6312045
Robert Griesemer [Fri, 15 Jun 2012 23:55:15 +0000 (16:55 -0700)]
go/ast: Walk: do not walk comment list
A comment to that effect was introduced
with rev
d332f4b9cef5 but the respective
code wasn't deleted.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
6304086
Shenghou Ma [Fri, 15 Jun 2012 18:24:44 +0000 (02:24 +0800)]
doc: delete Mercurial Queues doc
Fixes #3716.
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/
6310044
Nigel Tao [Fri, 15 Jun 2012 05:39:25 +0000 (15:39 +1000)]
exp/html/atom: add some more atoms.
R=r, dsymonds
CC=golang-dev
https://golang.org/cl/
6298085
Shenghou Ma [Thu, 14 Jun 2012 18:52:18 +0000 (02:52 +0800)]
exp/types: clean up objects after test
Fixes #3739.
R=bradfitz, rsc
CC=golang-dev
https://golang.org/cl/
6295083
Shenghou Ma [Thu, 14 Jun 2012 14:43:15 +0000 (22:43 +0800)]
crypto/elliptic: fix doc typo
Fixes #3735.
R=golang-dev, agl
CC=golang-dev
https://golang.org/cl/
6301083
Andrew Gerrand [Thu, 14 Jun 2012 03:18:10 +0000 (13:18 +1000)]
tag go1.0.2
R=golang-dev, rsc, dsymonds, minux.ma
CC=golang-dev
https://golang.org/cl/
6305089
Andrew Gerrand [Thu, 14 Jun 2012 01:44:00 +0000 (11:44 +1000)]
doc: document go1.0.2
R=golang-dev, dave, rsc
CC=golang-dev
https://golang.org/cl/
6298079
Nigel Tao [Thu, 14 Jun 2012 00:43:20 +0000 (10:43 +1000)]
cmd/gc: inline convT2E when T is uintptr-shaped.
GOARCH=amd64 benchmarks
src/pkg/runtime
benchmark old ns/op new ns/op delta
BenchmarkConvT2ESmall 10 10 +1.00%
BenchmarkConvT2EUintptr 9 0 -92.07%
BenchmarkConvT2EBig 74 74 -0.27%
BenchmarkConvT2I 27 26 -3.62%
BenchmarkConvI2E 4 4 -7.05%
BenchmarkConvI2I 20 19 -2.99%
test/bench/go1
benchmark old ns/op new ns/op delta
BenchmarkBinaryTree17
5930908000 5937260000 +0.11%
BenchmarkFannkuch11
3927057000 3933556000 +0.17%
BenchmarkGobDecode
21998090 21870620 -0.58%
BenchmarkGobEncode
12725310 12734480 +0.07%
BenchmarkGzip
567617600 567892800 +0.05%
BenchmarkGunzip
178284100 178706900 +0.24%
BenchmarkJSONEncode
87693550 86794300 -1.03%
BenchmarkJSONDecode
314212600 324115000 +3.15%
BenchmarkMandelbrot200
7016640 7073766 +0.81%
BenchmarkParse
7852100 7892085 +0.51%
BenchmarkRevcomp
1285663000 1286147000 +0.04%
BenchmarkTemplate
566823800 567606200 +0.14%
I'm not entirely sure why the JSON* numbers have changed, but
eyeballing the profile suggests that it could be spending less
and more time in runtime.{new,old}stack, so it could simply be
stack-split boundary noise.
R=rsc, dave, bsiegert, dsymonds
CC=golang-dev
https://golang.org/cl/
6280049
Rob Pike [Wed, 13 Jun 2012 22:55:43 +0000 (15:55 -0700)]
encoding/gob: don't cache broken encoding engines.
Fixes a situation where a nested bad type would still
permit the outer type to install a working engine, leading
to inconsistent behavior.
Fixes #3273.
R=bsiegert, rsc
CC=golang-dev
https://golang.org/cl/
6294067
Brad Fitzpatrick [Wed, 13 Jun 2012 21:53:05 +0000 (14:53 -0700)]
net/http: use index.html modtime (not directory) for If-Modified-Since
Thanks to Håvid Falch for finding the problem.
Fixes #3414
R=r, rsc
CC=golang-dev
https://golang.org/cl/
6300081
Rémy Oudompheng [Wed, 13 Jun 2012 21:52:00 +0000 (23:52 +0200)]
strconv: extend fast parsing algorithm to ParseFloat(s, 32)
benchmark old ns/op new ns/op delta
BenchmarkAtof32Decimal 215 73 -65.72%
BenchmarkAtof32Float 233 83 -64.21%
BenchmarkAtof32FloatExp 3351 209 -93.76%
BenchmarkAtof32Random 1939 260 -86.59%
R=rsc
CC=golang-dev, remy
https://golang.org/cl/
6294071
Robert Griesemer [Wed, 13 Jun 2012 20:54:36 +0000 (13:54 -0700)]
math/big: correctly test for positive inputs in Int.GCD
Also: better GCD tests.
R=rsc
CC=golang-dev
https://golang.org/cl/
6295076
Russ Cox [Wed, 13 Jun 2012 20:44:19 +0000 (16:44 -0400)]
syscall: fix windows copyFindData
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6301076
Robert Griesemer [Wed, 13 Jun 2012 20:32:59 +0000 (13:32 -0700)]
godoc: show comments in various filtered views
Fixes #3454.
R=rsc
CC=golang-dev
https://golang.org/cl/
6305069
Robert Griesemer [Wed, 13 Jun 2012 20:32:29 +0000 (13:32 -0700)]
go/ast: comment map implementation
A comment map associates comments with AST nodes
and permits correct updating of the AST's comment
list when the AST is manipulated.
R=rsc
CC=golang-dev
https://golang.org/cl/
6281044
Russ Cox [Wed, 13 Jun 2012 20:24:56 +0000 (16:24 -0400)]
go/build: fix boolean negation
!(linux&cgo | darwin&cgo)
= (!linux|!cgo) & (!darwin|!cgo)
= (!linux&!darwin) | !cgo // new comment
≠ !linux | !darwin | !cgo // old comment
Fixes #3726.
R=golang-dev, bsiegert
CC=golang-dev
https://golang.org/cl/
6306076
Jan Ziak [Wed, 13 Jun 2012 19:52:32 +0000 (15:52 -0400)]
runtime: improved continuity in hash computation
Fixes #3695.
R=r, dave, rsc
CC=golang-dev
https://golang.org/cl/
6304062
Robert Griesemer [Wed, 13 Jun 2012 17:29:06 +0000 (10:29 -0700)]
math/big: fix binaryGCD
R=rsc
CC=golang-dev
https://golang.org/cl/
6297085
Robert Griesemer [Wed, 13 Jun 2012 16:37:47 +0000 (09:37 -0700)]
math/big: various cleanups
R=golang-dev, iant
CC=golang-dev
https://golang.org/cl/
6295072
Christopher Swenson [Wed, 13 Jun 2012 16:31:20 +0000 (09:31 -0700)]
math/big: Implemented binary GCD algorithm
benchmark old ns/op new ns/op delta
BenchmarkGCD10x10 4383 2126 -51.49%
BenchmarkGCD10x100 5612 2124 -62.15%
BenchmarkGCD10x1000 8843 2622 -70.35%
BenchmarkGCD10x10000 17025 6576 -61.37%
BenchmarkGCD10x100000 118985 48130 -59.55%
BenchmarkGCD100x100 45328 11683 -74.23%
BenchmarkGCD100x1000 50141 12678 -74.72%
BenchmarkGCD100x10000 110314 26719 -75.78%
BenchmarkGCD100x100000 630000 156041 -75.23%
BenchmarkGCD1000x1000 654809 137973 -78.93%
BenchmarkGCD1000x10000 985683 159951 -83.77%
BenchmarkGCD1000x100000
4920792 366399 -92.55%
BenchmarkGCD10000x10000
16848950 3732062 -77.85%
BenchmarkGCD10000x100000
55401500 4675876 -91.56%
BenchmarkGCD100000x100000
1126775000 258951800 -77.02%
R=gri, rsc, bradfitz, remyoudompheng, mtj
CC=golang-dev
https://golang.org/cl/
6305065
Jean-Marc Eurin [Wed, 13 Jun 2012 14:25:00 +0000 (10:25 -0400)]
misc/emacs: Fix a failure when /tmp/<file>.go exists.
R=sameer
CC=golang-dev
https://golang.org/cl/
6296060
Robert Griesemer [Wed, 13 Jun 2012 01:11:19 +0000 (18:11 -0700)]
CONTRIBUTORS: added Christopher Swenson (Google CLA)
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6302069
Andrew Gerrand [Wed, 13 Jun 2012 00:33:02 +0000 (10:33 +1000)]
doc/install: mention GOPATH and point to code.html
Fixes #3469.
R=golang-dev, kevlar, rsc, r
CC=golang-dev
https://golang.org/cl/
6304049
Nigel Tao [Wed, 13 Jun 2012 00:13:05 +0000 (10:13 +1000)]
exp/html: simplify some of the parser's internal methods.
benchmark old ns/op new ns/op delta
BenchmarkParser
4006888 3950604 -1.40%
R=r, andybalholm
CC=golang-dev
https://golang.org/cl/
6301070
Robert Griesemer [Tue, 12 Jun 2012 16:36:35 +0000 (09:36 -0700)]
math/big: optimize common case of Int.Bit(0)
R=golang-dev, dsymonds, rsc
CC=golang-dev
https://golang.org/cl/
6306069
Rob Pike [Tue, 12 Jun 2012 04:36:39 +0000 (00:36 -0400)]
encoding/gob: better handling of nil pointers
- better message for top-level nil
- nil inside interface yields error, not panic
Fixes #3704.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
6304064
Rob Pike [Mon, 11 Jun 2012 21:52:09 +0000 (17:52 -0400)]
fmt.Fscanf: don't read past newline
Makes interactive uses work line-by-line.
Fixes #3481.
R=golang-dev, bradfitz, r
CC=golang-dev
https://golang.org/cl/
6297075
Robert Griesemer [Mon, 11 Jun 2012 18:06:27 +0000 (11:06 -0700)]
exp/types: testing resolution of qualified identifiers
Also: fix a bug with exp/types/GcImport.
R=rsc, r
CC=golang-dev
https://golang.org/cl/
6302060
Jean-Marc Eurin [Mon, 11 Jun 2012 17:12:28 +0000 (13:12 -0400)]
misc/emacs: Fix the automatic gofmt when creating a new file.
Patching the buffer with the output from gofmt -d only works if
the file already exists. If it doesn't, replace the content with
the output of gofmt.
R=sameer
CC=golang-dev
https://golang.org/cl/
6302063
Brad Fitzpatrick [Sun, 10 Jun 2012 01:30:44 +0000 (18:30 -0700)]
encoding/gob: fix doc typo
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
6300078
Dave Cheney [Fri, 8 Jun 2012 21:35:14 +0000 (17:35 -0400)]
runtime: use uintptr where possible in malloc stats
linux/arm OMAP4 pandaboard
benchmark old ns/op new ns/op delta
BenchmarkBinaryTree17
68723297000 37026214000 -46.12%
BenchmarkFannkuch11
34962402000 35958435000 +2.85%
BenchmarkGobDecode
137298600 124182150 -9.55%
BenchmarkGobEncode
60717160 60006700 -1.17%
BenchmarkGzip
5647156000 5550873000 -1.70%
BenchmarkGunzip
1196350000 1198670000 +0.19%
BenchmarkJSONEncode
863012800 782898000 -9.28%
BenchmarkJSONDecode
3312989000 2781800000 -16.03%
BenchmarkMandelbrot200
45727540 45703120 -0.05%
BenchmarkParse
74781800 59990840 -19.78%
BenchmarkRevcomp
140043650 139462300 -0.42%
BenchmarkTemplate
6467682000 5832153000 -9.83%
benchmark old MB/s new MB/s speedup
BenchmarkGobDecode 5.59 6.18 1.11x
BenchmarkGobEncode 12.64 12.79 1.01x
BenchmarkGzip 3.44 3.50 1.02x
BenchmarkGunzip 16.22 16.19 1.00x
BenchmarkJSONEncode 2.25 2.48 1.10x
BenchmarkJSONDecode 0.59 0.70 1.19x
BenchmarkParse 0.77 0.97 1.26x
BenchmarkRevcomp 18.15 18.23 1.00x
BenchmarkTemplate 0.30 0.33 1.10x
darwin/386 core duo
benchmark old ns/op new ns/op delta
BenchmarkBinaryTree17
10591616577 9678245733 -8.62%
BenchmarkFannkuch11
10758473315 10749303846 -0.09%
BenchmarkGobDecode
34379785 34121250 -0.75%
BenchmarkGobEncode
23523721 23475750 -0.20%
BenchmarkGzip
2486191492 2446539568 -1.59%
BenchmarkGunzip
444179328 444250293 +0.02%
BenchmarkJSONEncode
221138507 219757826 -0.62%
BenchmarkJSONDecode
1056034428 1048975133 -0.67%
BenchmarkMandelbrot200
19862516 19868346 +0.03%
BenchmarkRevcomp
3742610872 3724821662 -0.48%
BenchmarkTemplate
960283112 944791517 -1.61%
benchmark old MB/s new MB/s speedup
BenchmarkGobDecode 22.33 22.49 1.01x
BenchmarkGobEncode 32.63 32.69 1.00x
BenchmarkGzip 7.80 7.93 1.02x
BenchmarkGunzip 43.69 43.68 1.00x
BenchmarkJSONEncode 8.77 8.83 1.01x
BenchmarkJSONDecode 1.84 1.85 1.01x
BenchmarkRevcomp 67.91 68.24 1.00x
BenchmarkTemplate 2.02 2.05 1.01x
R=rsc, 0xe2.0x9a.0x9b, mirtchovski
CC=golang-dev, minux.ma
https://golang.org/cl/
6297047
Robert Griesemer [Fri, 8 Jun 2012 20:00:49 +0000 (13:00 -0700)]
math/big: added nat.trailingZeroBits, simplified some code
Will simplify implementation of binaryGCD.
R=rsc, cswenson
CC=golang-dev
https://golang.org/cl/
6299064
Russ Cox [Fri, 8 Jun 2012 18:28:29 +0000 (14:28 -0400)]
syscall: unexport GetCurrentProcessId on Windows
This slipped in with the implementation of Getpid in CL
5909043 .
I'd exclude that CL entirely but it is tangled up in the Win32finddata changes.
R=golang-dev, minux.ma
CC=golang-dev
https://golang.org/cl/
6297065
Russ Cox [Fri, 8 Jun 2012 18:04:44 +0000 (14:04 -0400)]
syscall: fix windows build
TBR=bradfitz
CC=golang-dev
https://golang.org/cl/
6303061
Russ Cox [Fri, 8 Jun 2012 17:54:48 +0000 (13:54 -0400)]
syscall: revert API changes in Windows Win32finddata fix.
Preserve old API by using correct struct in system call
and then copying the results, as we did for SetsockoptLinger.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6307065
Russ Cox [Fri, 8 Jun 2012 17:44:13 +0000 (13:44 -0400)]
cmd/api: handle empty API file, ignore -next in release
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6298063
Russ Cox [Fri, 8 Jun 2012 17:05:01 +0000 (13:05 -0400)]
regexp/syntax: unexport ErrUnexpectedParen
This new error is the only API change in the current draft of
Go 1.0.2 CLs. I'd like to include the CL that introduced it,
because it replaces a mysterious 'internal error' with a
useful error message, but I don't want any API changes,
so unexport the error constant for now. It can be
re-exported for Go 1.1.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
6294055
Nigel Tao [Fri, 8 Jun 2012 03:55:15 +0000 (13:55 +1000)]
exp/html: check the context node for consistency when parsing fragments.
R=rsc
CC=golang-dev
https://golang.org/cl/
6303053
Dave Cheney [Fri, 8 Jun 2012 03:13:02 +0000 (13:13 +1000)]
cmd/5c, cmd/5g, cmd/5l: fix cross compilation failure on darwin
Fixes #3708.
The fix to allow 5{c,g,l} to compile under clang 3.1 broke cross
compilation on darwin using the Apple default compiler on 10.7.3.
This failure was introduced in
9b455eb64690 .
This has been tested by cross compiling on darwin/amd64 to linux/arm using
* gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
* clang version 3.1 (branches/release_31)
As well as on linux/arm using
* gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
* Ubuntu clang version 3.0-6ubuntu3 (tags/RELEASE_30/final) (based on LLVM 3.0)
* Debian clang version 3.1-4 (branches/release_31) (based on LLVM 3.1)
R=consalus, rsc
CC=golang-dev
https://golang.org/cl/
6307058
Shenghou Ma [Thu, 7 Jun 2012 18:56:23 +0000 (02:56 +0800)]
test/bench/shoutout: fix compliation
-lm must come after the source file, versions of gcc insist this strict order.
On standard compliant systems, we no longer need malloc.h for malloc.
Use pkg-config(1) to get correct glib cflags and libs.
Fix compiler warning in threadring.c and k-nucleotide.c.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6198076
Shenghou Ma [Thu, 7 Jun 2012 18:42:28 +0000 (02:42 +0800)]
cmd/5a, cmd/5l: add MULW{T,B} and MULAW{T,B} support for ARM
Supported in ARMv5TE and above.
Also corrected MULA disassembly listing.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6265045
Russ Cox [Thu, 7 Jun 2012 16:37:50 +0000 (12:37 -0400)]
cmd/cgo: make Go code order deterministic
The type declarations were being generated using
a range over a map, which meant that successive
runs produced different orders. This will make sure
successive runs produce the same files.
Fixes #3707.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6300062
Russ Cox [Thu, 7 Jun 2012 16:05:34 +0000 (12:05 -0400)]
cmd/gc: limit data disassembly to -SS
This makes -S useful again.
R=ken2
CC=golang-dev
https://golang.org/cl/
6302054
Russ Cox [Thu, 7 Jun 2012 15:59:18 +0000 (11:59 -0400)]
cmd/gc: fix LEAQ $0, SI bug
Cannot take effective address of constant.
Fixes #3670.
R=ken2
CC=golang-dev
https://golang.org/cl/
6299055
Russ Cox [Thu, 7 Jun 2012 07:15:09 +0000 (03:15 -0400)]
cmd/gc: run escape analysis in call graph dependency order
If there are mutually recursive functions, there is a cycle in
the dependency graph, so the order is actually dependency order
among the strongly connected components: mutually recursive
functions get put into the same batch and analyzed together.
(Until now the entire package was put in one batch.)
The non-recursive case (single function, maybe with some
closures inside) will be able to be more precise about inputs
that escape only back to outputs, but that is not implemented yet.
R=ken2
CC=golang-dev, lvd
https://golang.org/cl/
6304050
Russ Cox [Thu, 7 Jun 2012 07:06:40 +0000 (03:06 -0400)]
cmd/gc: fix type checking loop
CL
4313064 fixed its test case but did not address a
general enough problem:
type T1 struct { F *T2 }
type T2 T1
type T3 T2
could still end up copying the definition of T1 for T2
before T1 was done being evaluated, or T3 before T2
was done.
In order to propagate the updates correctly,
record a copy of an incomplete type for re-execution
once the type is completed. Roll back CL
4313064 .
Fixes #3709.
R=ken2
CC=golang-dev, lstoakes
https://golang.org/cl/
6301059
Russ Cox [Thu, 7 Jun 2012 06:15:23 +0000 (02:15 -0400)]
cmd/gc: delete dead code
R=ken2
CC=golang-dev
https://golang.org/cl/
6307050
Russ Cox [Thu, 7 Jun 2012 06:05:08 +0000 (02:05 -0400)]
cmd/gc: do not crash on struct with _ field
Fixes #3607.
R=ken2
CC=golang-dev
https://golang.org/cl/
6296052
Russ Cox [Thu, 7 Jun 2012 05:54:07 +0000 (01:54 -0400)]
cmd/gc: preserve side effects during inlining of function with _ argument
Fixes #3593.
R=ken2
CC=golang-dev, lvd
https://golang.org/cl/
6305061
Russ Cox [Thu, 7 Jun 2012 05:48:55 +0000 (01:48 -0400)]
encoding/json: fix panic unmarshaling into non-nil interface value
Fixes #3614.
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/
6306051
Russ Cox [Thu, 7 Jun 2012 04:51:11 +0000 (00:51 -0400)]
cmd/gc: mark output of typename as type-checked
R=ken2
CC=golang-dev
https://golang.org/cl/
6302051
Nigel Tao [Thu, 7 Jun 2012 03:46:57 +0000 (13:46 +1000)]
exp/html: when parsing, compare atoms (ints) instead of strings.
This is the mechanical part of the 2-part change that started with
https://golang.org/cl/
6305053 /
R=rsc
CC=andybalholm, golang-dev, r
https://golang.org/cl/
6295055
Nigel Tao [Thu, 7 Jun 2012 03:05:35 +0000 (13:05 +1000)]
exp/html: make the tokenizer return atoms for tag tokens.
This is part 1 of a 2 part changelist. Part 2 contains the mechanical
change to parse.go to compare atoms (ints) instead of strings.
The overall effect of the two changes are:
benchmark old ns/op new ns/op delta
BenchmarkParser
4462274 4058254 -9.05%
BenchmarkRawLevelTokenizer 913202 912917 -0.03%
BenchmarkLowLevelTokenizer
1268626 1267836 -0.06%
BenchmarkHighLevelTokenizer
1947305 1968944 +1.11%
R=rsc
CC=andybalholm, golang-dev, r
https://golang.org/cl/
6305053
Dave Cheney [Thu, 7 Jun 2012 00:23:45 +0000 (10:23 +1000)]
test/bench/go1: add go/parser benchmark
As discussed in
https://groups.google.com/d/msg/golang-dev/Na9XE6mcQyY/zbeBI7R-vnoJ
Here is a static copy of the go/parser benchmark. I ended up using
fancy encodings because the original parser.go had a number of `s
scattered throughout which made it hard to embed the source directly.
Curiously on my laptop this benchmark always scores roughly 10% higher
than the standalone benchmark. This may be down to the generation of
the fasta data set triggering the cpu governor to raise the cpu speed.
However the benchmark is consistent with itself across multiple runs.
R=golang-dev, minux.ma, rsc
CC=golang-dev
https://golang.org/cl/
6305055
Alex Brainman [Wed, 6 Jun 2012 23:37:05 +0000 (09:37 +1000)]
runtime: include "typekind.h" to fix windows build
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6305059
Nigel Tao [Wed, 6 Jun 2012 23:35:35 +0000 (09:35 +1000)]
exp/html/atom: add more atoms.
This completely covers the tags used by exp/html's parser.
Before:
295 atoms; 1406 string bytes + 2048 tables = 3454 total data
BenchmarkLookup 50000 59841 ns/op
After:
322 atoms; 1508 string bytes + 2048 tables = 3556 total data
BenchmarkLookup 50000 60159 ns/op
R=r
CC=golang-dev
https://golang.org/cl/
6296045
Andrew Gerrand [Wed, 6 Jun 2012 23:27:39 +0000 (09:27 +1000)]
misc/dashboard/app: fix build failure notifications
The datastore.Query methods once mutated the Query value, but now they return
a derivative query, so the Hash= and ParentHash= filters were not being
applied.
R=golang-dev, bradfitz, dsymonds
CC=golang-dev
https://golang.org/cl/
6300058
Fazlul Shahriar [Wed, 6 Jun 2012 22:38:56 +0000 (18:38 -0400)]
net: pass tests on Plan 9 again
R=golang-dev
CC=golang-dev
https://golang.org/cl/
6280045
Jan Ziak [Wed, 6 Jun 2012 21:20:02 +0000 (17:20 -0400)]
runtime: move type kinds into a separate file
R=rsc
CC=golang-dev
https://golang.org/cl/
6285047
Daniel Morsing [Wed, 6 Jun 2012 20:54:02 +0000 (16:54 -0400)]
fmt: fix doc typo
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6308046
Russ Cox [Wed, 6 Jun 2012 20:52:38 +0000 (16:52 -0400)]
A+C: Daniel Morsing (individual CLA)
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6307048
Markus Sonderegger [Wed, 6 Jun 2012 20:05:47 +0000 (16:05 -0400)]
crypto/rand: enable rand.Reader on plan9
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6297044
Russ Cox [Wed, 6 Jun 2012 20:05:27 +0000 (16:05 -0400)]
A+C: Markus Sonderegger (individual CLA)
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6303047
Russ Cox [Wed, 6 Jun 2012 19:08:00 +0000 (15:08 -0400)]
fmt: fix inadvertent change to %#v
The reordering speedup in CL
6245068 changed the semantics
of %#v by delaying the clearing of some flags. Restore the old
semantics and add a test.
Fixes #3706.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
6302048
Shenghou Ma [Wed, 6 Jun 2012 14:03:31 +0000 (22:03 +0800)]
net: fix cgoAddrInfoFlags() on FreeBSD
CL
6250075 removed AI_MASK mask on all BSD variants,
however FreeBSD's AI_MASK does not include AI_V4MAPPED
and AI_ALL, and its libc is strict about the ai_flags.
This will fix the FreeBSD builder.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
6305054