]>
 
 
Cypherpunks repositories - gostls13.git/log 
 
 
 
 
 
 
Rob Pike [Thu, 12 Apr 2012 05:57:09 +0000 (15:57 +1000)] 
 
text/template: catch unexported fields during parse
It's a common error to reference unexported field names in templates,
especially for newcomers. This catches the error at parse time rather than
execute time so the rare few who check errors will notice right away.
These were always an error, so the net behavior is unchanged.
Should break no existing code, just identify the error earlier.
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
6009048 
 
David Symonds [Wed, 11 Apr 2012 23:55:37 +0000 (09:55 +1000)] 
 
misc/dashboard: cope with removed Package fields.
adg removed some now-unwanted fields in Package a while ago,
but there are still datastore entities with those fields,
so we must explicitly check for ErrFieldMismatch and ignore it.
R=golang-dev, rsc
CC=adg, golang-dev
https://golang.org/cl/
6007043 
 
Nigel Tao [Wed, 11 Apr 2012 23:35:43 +0000 (09:35 +1000)] 
 
html, exp/html: escape ' and " as ' and ", since IE8 and
below do not support '.
This makes package html consistent with package text/template's
HTMLEscape function.
Fixes #3489.
R=rsc, mikesamuel, dsymonds
CC=golang-dev
https://golang.org/cl/
5992071 
 
Adam Langley [Wed, 11 Apr 2012 16:57:38 +0000 (12:57 -0400)] 
 
crypto/rsa: fix Verify for multi-prime keys.
The least common multiple is not totient/gcd.
R=remyoudompheng
CC=golang-dev
https://golang.org/cl/
5990045 
 
Adam Langley [Wed, 11 Apr 2012 16:55:57 +0000 (12:55 -0400)] 
 
crypto/tls: update how we create testing scripts.
crypto/tls is tested, in part, by replaying recorded TLS connections
and checking that the bytes sent by the Go code haven't changed.
Previously we used GnuTLS's debug output and extracted the bytes of
the TLS connection using a Python script. That wasn't great, and I
think GnuTLS removed that level of debugging in a more current
release.
This change records the connection with Go code and adds a test for
ECDHE-AES clients generating using this method.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5988048 
 
Marcel van Lohuizen [Wed, 11 Apr 2012 14:47:53 +0000 (16:47 +0200)] 
 
exp/norm: exposed runeInfo type in API.
For completeness, we also expose the Canonical Combining Class of a rune.
This does not increase the data size.
R=r
CC=golang-dev
https://golang.org/cl/
5931043 
 
Dave Cheney [Wed, 11 Apr 2012 12:45:44 +0000 (22:45 +1000)] 
 
runtime: add interface microbenchmarks
2011 Mac Mini, Core i5 @ 2.3Ghz
BenchmarkConvT2E        
50000000                 40.4 ns/op
BenchmarkConvT2EBig     
20000000                107 ns/op
BenchmarkConvT2I        
100000000                28.9 ns/op
BenchmarkConvI2E        
500000000                 5.93 ns/op
BenchmarkConvI2I        
100000000                19.0 ns/op
BenchmarkAssertE2T      
100000000                14.1 ns/op
BenchmarkAssertE2TBig   
100000000                17.8 ns/op
BenchmarkAssertE2I      
100000000                21.3 ns/op
BenchmarkAssertI2T      
100000000                14.3 ns/op
BenchmarkAssertI2I      
100000000                20.8 ns/op
BenchmarkAssertI2E      
500000000                 5.58 ns/op
Pandaboard, 2 x Omap4 @ 1.2Ghz
BenchmarkConvT2E        
10000000                215 ns/op
BenchmarkConvT2EBig      
1000000               3697 ns/op
BenchmarkConvT2I         
5000000                666 ns/op
BenchmarkConvI2E        
50000000                 42.4 ns/op
BenchmarkConvI2I         
5000000                489 ns/op
BenchmarkAssertE2T      
20000000                 90.0 ns/op
BenchmarkAssertE2TBig   
20000000                 91.6 ns/op
BenchmarkAssertE2I       
5000000                515 ns/op
BenchmarkAssertI2T      
20000000                124 ns/op
BenchmarkAssertI2I       
5000000                517 ns/op
BenchmarkAssertI2E      
50000000                 47.2 ns/op
BenchmarkAssertE2E      
50000000                 42.7 ns/op
R=minux.ma, rsc, fullung, bsiegert, dsymonds
CC=golang-dev
https://golang.org/cl/
5777048 
 
Joel Sing [Wed, 11 Apr 2012 12:02:08 +0000 (22:02 +1000)] 
 
runtime: update openbsd thread related syscalls to match kernel
Update the threxit and thrsleep syscalls to match the ABI of the
OpenBSD 5.1 kernel. These changes are backwards compatible with
older kernels.
Fixes #3311.
R=golang-dev, rsc, devon.odell
CC=golang-dev
https://golang.org/cl/
5777079 
 
Dave Cheney [Wed, 11 Apr 2012 00:59:03 +0000 (10:59 +1000)] 
 
doc: fix minor typo in Go 1 release notes
Fixes #3478.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5986074 
 
Shenghou Ma [Tue, 10 Apr 2012 20:11:27 +0000 (04:11  +0800)] 
 
5l, runtime: remove softfloat emulation code when not used
This leads to ~30kB improvement on code size for ARM machines with VFP/NEON.
Example: go test -c math
       GOARM=5  GOARM=6
  Old: 
1884200   1839144 
  New: 
1884165   1805245 
  -:        35    33899
R=rsc, bradfitz, dave, kai.backman
CC=golang-dev
https://golang.org/cl/
5975060 
 
Shenghou Ma [Tue, 10 Apr 2012 20:09:04 +0000 (04:09  +0800)] 
 
5a, 5l: add PLD (preload data) instruction
        Supported in ARMv5TE and above, excluding ARMv5TExP.
        For CL 
5990066 .
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5999044 
 
Pascal S. de Kloe [Tue, 10 Apr 2012 19:15:39 +0000 (15:15 -0400)] 
 
hash: more efficient memory allocation
Feed append the complete content at once.
BenchmarkAdler32KB       
1000000               2534 ns/op         404.05 MB/s
BenchmarkCrc32KB          500000              4757 ns/op         215.26 MB/s
BenchmarkCrc64KB          500000              4769 ns/op         214.70 MB/s
BenchmarkFnv32KB         
1000000               2417 ns/op         423.64 MB/s
BenchmarkFnv32aKB        
1000000               2408 ns/op         425.23 MB/s
BenchmarkFnv64KB          500000              4262 ns/op         240.21 MB/s
BenchmarkFnv64aKB         500000              4234 ns/op         241.83 MB/s
R=iant, rsc, r, minux.ma
CC=golang-dev
https://golang.org/cl/
5937053 
 
Akshat Kumar [Tue, 10 Apr 2012 19:14:10 +0000 (15:14 -0400)] 
 
runtime: fix floating point exception on Plan 9
Change 
5660047  moved an FLDCW instruction
that disables invalid operand traps into
runtime·asminit, which is called from
runtime·mstart. Thus, runtime·check is being
called prior to setting the appropriate control bits,
which on any QNaN comparison will cause Plan 9
to take an invalid operand trap. This change loads
the control bits (for Plan 9) prior to runtime·check.
Ideally, this should be done before the QNaN checks
on any system, but possibly other kernels simply
don't ever trap on invalid operands.
R=golang-dev, rminnich
CC=golang-dev, john, rsc
https://golang.org/cl/
5939045 
 
Russ Cox [Tue, 10 Apr 2012 19:14:04 +0000 (15:14 -0400)] 
 
A+C: Akshat Kumar (individual CLA)
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
6004043 
 
Quan Yong Zhai [Tue, 10 Apr 2012 19:05:22 +0000 (15:05 -0400)] 
 
runtime: unregister the SIGILL handler after ARM EABI test
Part of issue 3381
R=rsc, minux.ma, dave
CC=golang-dev
https://golang.org/cl/
5969064 
 
Russ Cox [Tue, 10 Apr 2012 16:51:59 +0000 (12:51 -0400)] 
 
6c, 6g, 6l: add MOVQL to make truncation explicit
Without an explicit signal for a truncation, copy propagation
will sometimes propagate a 32-bit truncation and end up
overwriting uses of the original 64-bit value.
The case that arose in practice is in C but I believe
that the same could plausibly happen in Go.
The main reason we didn't run into the same in Go
is that I (perhaps incorrectly?) drop MOVL AX, AX
during gins, so the truncation was never generated, so
it didn't confuse the optimizer.
Fixes #1315.
Fixes #3488.
R=ken2
CC=golang-dev
https://golang.org/cl/
6002043 
 
Russ Cox [Tue, 10 Apr 2012 16:51:36 +0000 (12:51 -0400)] 
 
cmd/6c: fix probable code gen bug
This is a pointer being copied; MOVL can't possibly be right.
R=ken2
CC=golang-dev
https://golang.org/cl/
5999043 
 
Russ Cox [Tue, 10 Apr 2012 14:45:58 +0000 (10:45 -0400)] 
 
cmd/8c: fix store to complex uint64 ptr
Assignment of a computed uint64 value to an
address derived with a function call was executing
the call after computing the value, which trashed
the value (held in registers).
long long *f(void) { return 0; }
void g(int x, int y) {
        *f() = (long long)x | (long long)y<<32;
}
Before:
(x.c:3)	TEXT	g+0(SB),(gok(71))
...
(x.c:4)	ORL	AX,DX
(x.c:4)	ORL	CX,BX
(x.c:4)	CALL	,f+0(SB)
(x.c:4)	MOVL	DX,(AX)
(x.c:4)	MOVL	BX,4(AX)
After:
(x.c:3)	TEXT	g+0(SB),(gok(71))
(x.c:4)	CALL	,f+0(SB)
...
(x.c:4)	ORL	CX,BX
(x.c:4)	ORL	DX,BP
(x.c:4)	MOVL	BX,(AX)
(x.c:4)	MOVL	BP,4(AX)
Fixes #3501.
R=ken2
CC=golang-dev
https://golang.org/cl/
5998043 
 
Shenghou Ma [Tue, 10 Apr 2012 14:34:31 +0000 (22:34 +0800)] 
 
syscall: support Getpid() on Windows
        Fixes #3379.
R=golang-dev, alex.brainman, rsc, bradfitz
CC=golang-dev
https://golang.org/cl/
5909043 
 
Shenghou Ma [Tue, 10 Apr 2012 14:12:09 +0000 (22:12 +0800)] 
 
cmd/api: allow addition of API
R=bradfitz, rsc
CC=golang-dev
https://golang.org/cl/
5991081 
 
Russ Cox [Tue, 10 Apr 2012 14:09:27 +0000 (10:09 -0400)] 
 
8a, 8l: add PREFETCH instructions
R=ken2
CC=golang-dev
https://golang.org/cl/
5992082 
 
Russ Cox [Tue, 10 Apr 2012 14:09:09 +0000 (10:09 -0400)] 
 
6a, 6l: add PREFETCH instructions
R=ken2
CC=golang-dev
https://golang.org/cl/
5989073 
 
Joel Sing [Tue, 10 Apr 2012 11:57:05 +0000 (21:57 +1000)] 
 
runtime: block signals during thread creation on openbsd
Block signals during thread creation, otherwise the new thread can
receive a signal prior to initialisation completing.
Fixes #3102.
R=golang-dev, rsc, devon.odell, minux.ma
CC=golang-dev
https://golang.org/cl/
5757064 
 
Rob Pike [Tue, 10 Apr 2012 06:46:06 +0000 (16:46 +1000)] 
 
test/bench/shootout: update timing.log to Go 1
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5989063 
 
Alex Brainman [Tue, 10 Apr 2012 00:07:29 +0000 (10:07 +1000)] 
 
os: fix IsPermission on windows
Fixes #3482.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5987070 
 
Rob Pike [Mon, 9 Apr 2012 23:47:57 +0000 (09:47 +1000)] 
 
runtime.Callers: make documentation match code
It is a bug that Caller and Callers disagree about the offset of the skip
parameter. Document the bug.
R=rsc, dsymonds, r, iant
CC=golang-dev
https://golang.org/cl/
5976064 
 
Alexey Borzenkov [Mon, 9 Apr 2012 19:39:59 +0000 (15:39 -0400)] 
 
cmd/dist: don't fail when Mercurial is a batch file on Windows
On windows Mercurial installed with easy_install typically creates
an hg.bat batch file in Python Scripts directory, which cannot be used
with CreateProcess unless full path is specified. Work around by
launching hg via cmd.exe /c.
Additionally, fix a rare FormatMessageW crash.
Fixes #3093.
R=golang-dev, rsc, alex.brainman, aram, jdpoirier, mattn.jp
CC=golang-dev
https://golang.org/cl/
5937043 
 
Benny Siegert [Mon, 9 Apr 2012 19:04:59 +0000 (15:04 -0400)] 
 
cmd/yacc: spring cleaning for units.y
* sort imports
* use runtime.GOROOT
* fix some typos
R=golang-dev, dave, rsc
CC=golang-dev
https://golang.org/cl/
5987054 
 
Brad Fitzpatrick [Mon, 9 Apr 2012 18:19:52 +0000 (11:19 -0700)] 
 
debug/gosym: in test, use temp binary name in /tmp, and clean up.
This fixes all.bash on shared machines.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5992078 
 
Shenghou Ma [Mon, 9 Apr 2012 17:55:51 +0000 (01:55  +0800)] 
 
doc/code: update newmath.Sqrt test case to make sure test succeed
        Fixes #3445.
R=golang-dev, rsc, mtj
CC=golang-dev
https://golang.org/cl/
5975061 
 
Shenghou Ma [Mon, 9 Apr 2012 17:50:46 +0000 (01:50  +0800)] 
 
doc/go_spec: fix a typo
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5989065 
 
Shenghou Ma [Mon, 9 Apr 2012 17:49:49 +0000 (01:49  +0800)] 
 
build: run.bash no longer accepts --no-banner
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5986063 
 
Dmitriy Vyukov [Mon, 9 Apr 2012 09:05:43 +0000 (13:05 +0400)] 
 
runtime: preparation for parallel GC
make MHeap.allspans an array instead on a linked-list,
it's required for parallel for
benchmark                              old ns/op    new ns/op    delta
garbage.BenchmarkTree                  
494435529     487962705    -1.31%
garbage.BenchmarkTree-2                
499652705     485358000    -2.86%
garbage.BenchmarkTree-4                
468482117     454093117    -3.07%
garbage.BenchmarkTree-8                
488533235     471872470    -3.41%
garbage.BenchmarkTree-16               
507835176     492558470    -3.01%
garbage.BenchmarkTree2                  
31453900      31404300    -0.16%
garbage.BenchmarkTree2-2                
21440600      21477000    +0.17%
garbage.BenchmarkTree2-4                
10982000      11117400    +1.23%
garbage.BenchmarkTree2-8                 
7544700       7456700    -1.17%
garbage.BenchmarkTree2-16                
7049500       6805700    -3.46%
garbage.BenchmarkParser               
4448988000    4453264000    +0.10%
garbage.BenchmarkParser-2             
4086045000    4057948000    -0.69%
garbage.BenchmarkParser-4             
3677365000    3661246000    -0.44%
garbage.BenchmarkParser-8             
3517253000    3540190000    +0.65%
garbage.BenchmarkParser-16            
3506562000    3463478000    -1.23%
garbage.BenchmarkTreePause              
20969784      21100238    +0.62%
garbage.BenchmarkTreePause-2            
20215875      20139572    -0.38%
garbage.BenchmarkTreePause-4            
17240709      16683624    -3.23%
garbage.BenchmarkTreePause-8            
18196386      17639306    -3.06%
garbage.BenchmarkTreePause-16           
20621158      20215056    -1.97%
garbage.BenchmarkTree2Pause            
173992142     173872380    -0.07%
garbage.BenchmarkTree2Pause-2          
131281904     131366666    +0.06%
garbage.BenchmarkTree2Pause-4           
93484952      95109619    +1.74%
garbage.BenchmarkTree2Pause-8           
88950523      86533333    -2.72%
garbage.BenchmarkTree2Pause-16          
86071238      84089190    -2.30%
garbage.BenchmarkParserPause           
135815000     135255952    -0.41%
garbage.BenchmarkParserPause-2          
92691523      91451428    -1.34%
garbage.BenchmarkParserPause-4          
53392190      51611904    -3.33%
garbage.BenchmarkParserPause-8          
36059523      35116666    -2.61%
garbage.BenchmarkParserPause-16         
30174300      27340600    -9.39%
garbage.BenchmarkTreeLastPause          
28420000      29142000    +2.54%
garbage.BenchmarkTreeLastPause-2        
23514000      26779000   +13.89%
garbage.BenchmarkTreeLastPause-4        
21773000      18660000   -14.30%
garbage.BenchmarkTreeLastPause-8        
24072000      21276000   -11.62%
garbage.BenchmarkTreeLastPause-16       
25149000      28541000   +13.49%
garbage.BenchmarkTree2LastPause        
314491000     313982000    -0.16%
garbage.BenchmarkTree2LastPause-2      
214363000     214715000    +0.16%
garbage.BenchmarkTree2LastPause-4      
109778000     111115000    +1.22%
garbage.BenchmarkTree2LastPause-8       
75390000      74522000    -1.15%
garbage.BenchmarkTree2LastPause-16      
70333000      67880000    -3.49%
garbage.BenchmarkParserLastPause       
327247000     326815000    -0.13%
garbage.BenchmarkParserLastPause-2     
217039000     212529000    -2.08%
garbage.BenchmarkParserLastPause-4     
119722000     111535000    -6.84%
garbage.BenchmarkParserLastPause-8      
70806000      69613000    -1.68%
garbage.BenchmarkParserLastPause-16     
62813000      48009000   -23.57%
R=rsc, r
CC=golang-dev
https://golang.org/cl/
5992055 
 
Dmitriy Vyukov [Sat, 7 Apr 2012 13:02:44 +0000 (17:02 +0400)] 
 
runtime: add memory prefetching to GC
benchmark                              old ns/op    new ns/op    delta
garbage.BenchmarkParser               
4448988000    4370531000    -1.76%
garbage.BenchmarkParser-2             
4086045000    4023083000    -1.54%
garbage.BenchmarkParser-4             
3677365000    3667020000    -0.28%
garbage.BenchmarkParser-8             
3517253000    3543946000    +0.76%
garbage.BenchmarkParser-16            
3506562000    3512518000    +0.17%
garbage.BenchmarkTree                  
494435529     505784058    +2.30%
garbage.BenchmarkTree-2                
499652705     502774823    +0.62%
garbage.BenchmarkTree-4                
468482117     465713352    -0.59%
garbage.BenchmarkTree-8                
488533235     482287000    -1.28%
garbage.BenchmarkTree-16               
507835176     500654882    -1.41%
garbage.BenchmarkTree2                  
31453900      28804600    -8.42%
garbage.BenchmarkTree2-2                
21440600      19065800   -11.08%
garbage.BenchmarkTree2-4                
10982000      10009100    -8.86%
garbage.BenchmarkTree2-8                 
7544700       6479800   -14.11%
garbage.BenchmarkTree2-16                
7049500       6163200   -12.57%
garbage.BenchmarkParserPause           
135815000     125360666    -7.70%
garbage.BenchmarkParserPause-2          
92691523      84365476    -8.98%
garbage.BenchmarkParserPause-4          
53392190      46995809   -11.98%
garbage.BenchmarkParserPause-8          
36059523      30998900   -14.03%
garbage.BenchmarkParserPause-16         
30174300      27613350    -8.49%
garbage.BenchmarkTreePause              
20969784      22568102    +7.62%
garbage.BenchmarkTreePause-2            
20215875      20975130    +3.76%
garbage.BenchmarkTreePause-4            
17240709      17180666    -0.35%
garbage.BenchmarkTreePause-8            
18196386      18205870    +0.05%
garbage.BenchmarkTreePause-16           
20621158      20486867    -0.65%
garbage.BenchmarkTree2Pause            
173992142     159995285    -8.04%
garbage.BenchmarkTree2Pause-2          
131281904     118013714   -10.11%
garbage.BenchmarkTree2Pause-4           
93484952      85092666    -8.98%
garbage.BenchmarkTree2Pause-8           
88950523      77340809   -13.05%
garbage.BenchmarkTree2Pause-16          
86071238      76557952   -11.05%
garbage.BenchmarkParserLastPause       
327247000     288205000   -11.93%
garbage.BenchmarkParserLastPause-2     
217039000     187336000   -13.69%
garbage.BenchmarkParserLastPause-4     
119722000     105069000   -12.24%
garbage.BenchmarkParserLastPause-8      
70806000      64755000    -8.55%
garbage.BenchmarkParserLastPause-16     
62813000      53486000   -14.85%
garbage.BenchmarkTreeLastPause          
28420000      29735000    +4.63%
garbage.BenchmarkTreeLastPause-2        
23514000      25427000    +8.14%
garbage.BenchmarkTreeLastPause-4        
21773000      19548000   -10.22%
garbage.BenchmarkTreeLastPause-8        
24072000      24046000    -0.11%
garbage.BenchmarkTreeLastPause-16       
25149000      25291000    +0.56%
garbage.BenchmarkTree2LastPause        
314491000     287988000    -8.43%
garbage.BenchmarkTree2LastPause-2      
214363000     190616000   -11.08%
garbage.BenchmarkTree2LastPause-4      
109778000     100052000    -8.86%
garbage.BenchmarkTree2LastPause-8       
75390000      64753000   -14.11%
garbage.BenchmarkTree2LastPause-16      
70333000      61484000   -12.58%
FTR, below are result with the empty prefetch function,
that is, single RET but no real prefetching.
It suggests that inlinable PREFETCH is worth pursuing.
benchmark                              old ns/op    new ns/op    delta
garbage.BenchmarkParser               
4448988000    4560488000    +2.51%
garbage.BenchmarkParser-2             
4086045000    4129728000    +1.07%
garbage.BenchmarkParser-4             
3677365000    3728672000    +1.40%
garbage.BenchmarkParser-8             
3517253000    3583968000    +1.90%
garbage.BenchmarkParser-16            
3506562000    3591414000    +2.42%
garbage.BenchmarkTree                  
494435529     499580882    +1.04%
garbage.BenchmarkTree-4                
468482117     467387294    -0.23%
garbage.BenchmarkTree-8                
488533235     478311117    -2.09%
garbage.BenchmarkTree-2                
499652705     499324235    -0.07%
garbage.BenchmarkTree-16               
507835176     502005705    -1.15%
garbage.BenchmarkTree2                  
31453900      33296800    +5.86%
garbage.BenchmarkTree2-2                
21440600      22466400    +4.78%
garbage.BenchmarkTree2-4                
10982000      11402700    +3.83%
garbage.BenchmarkTree2-8                 
7544700       7476500    -0.90%
garbage.BenchmarkTree2-16                
7049500       7338200    +4.10%
garbage.BenchmarkParserPause           
135815000     139529142    +2.73%
garbage.BenchmarkParserPause-2          
92691523      95229190    +2.74%
garbage.BenchmarkParserPause-4          
53392190      53083476    -0.58%
garbage.BenchmarkParserPause-8          
36059523      34594800    -4.06%
garbage.BenchmarkParserPause-16         
30174300      30063300    -0.37%
garbage.BenchmarkTreePause              
20969784      21866920    +4.28%
garbage.BenchmarkTreePause-2            
20215875      20731125    +2.55%
garbage.BenchmarkTreePause-4            
17240709      17275837    +0.20%
garbage.BenchmarkTreePause-8            
18196386      17898777    -1.64%
garbage.BenchmarkTreePause-16           
20621158      20662772    +0.20%
garbage.BenchmarkTree2Pause            
173992142     184336857    +5.95%
garbage.BenchmarkTree2Pause-2          
131281904     138005714    +5.12%
garbage.BenchmarkTree2Pause-4           
93484952      98449238    +5.31%
garbage.BenchmarkTree2Pause-8           
88950523      89286095    +0.38%
garbage.BenchmarkTree2Pause-16          
86071238      89568666    +4.06%
garbage.BenchmarkParserLastPause       
327247000     342189000    +4.57%
garbage.BenchmarkParserLastPause-2     
217039000     217224000    +0.09%
garbage.BenchmarkParserLastPause-4     
119722000     121327000    +1.34%
garbage.BenchmarkParserLastPause-8      
70806000      71941000    +1.60%
garbage.BenchmarkParserLastPause-16     
62813000      60166000    -4.21%
garbage.BenchmarkTreeLastPause          
28420000      27840000    -2.04%
garbage.BenchmarkTreeLastPause-2        
23514000      27390000   +16.48%
garbage.BenchmarkTreeLastPause-4        
21773000      21414000    -1.65%
garbage.BenchmarkTreeLastPause-8        
24072000      21705000    -9.83%
garbage.BenchmarkTreeLastPause-16       
25149000      23932000    -4.84%
garbage.BenchmarkTree2LastPause        
314491000     332894000    +5.85%
garbage.BenchmarkTree2LastPause-2      
214363000     224611000    +4.78%
garbage.BenchmarkTree2LastPause-4      
109778000     113976000    +3.82%
garbage.BenchmarkTree2LastPause-8       
75390000      67223000   -10.83%
garbage.BenchmarkTree2LastPause-16      
70333000      73216000    +4.10%
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5991057 
 
Bobby Powers [Sat, 7 Apr 2012 00:51:32 +0000 (10:51 +1000)] 
 
time: in Format give buffer an initial capacity
I have a small web server that simply sets several cookies
along with an expires header, and then returns.  In the
cpuprofile for a 200k request benchmark, time.Time.Format()
was showing up as 8.3% of cpu usage.  Giving the buffer an
inital capacity to avoid reallocs on append drops it down to
7.6%.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
5992058 
 
Charles L. Dorian [Fri, 6 Apr 2012 18:01:12 +0000 (14:01 -0400)] 
 
math: make function documentation more regular
R=rsc, golang-dev
CC=golang-dev
https://golang.org/cl/
5994043 
 
Benny Siegert [Fri, 6 Apr 2012 14:57:05 +0000 (07:57 -0700)] 
 
syscall: manually fix z* for NetBSD/amd64
Building go currently fails on NetBSD, thus the regeneration
scripts do not run correctly. With these changes, at least
the go_bootstrap tool builds correctly.
R=golang-dev, r, bradfitz
CC=golang-dev
https://golang.org/cl/
5695064 
 
Shenghou Ma [Thu, 5 Apr 2012 20:19:35 +0000 (04:19  +0800)] 
 
crypto/aes: add benchmarks for decryption and key expansion
R=agl, rsc, fullung
CC=golang-dev
https://golang.org/cl/
5972056 
 
Stéphane Travostino [Thu, 5 Apr 2012 17:23:08 +0000 (13:23 -0400)] 
 
net/url: Correctly escape URL as per RFC 3986
The shouldEscape function did not correctly escape the reserved characters listed in RFC 3986 §2.2, breaking some strict web servers.
Fixes #3433.
R=rsc
CC=golang-dev
https://golang.org/cl/
5970050 
 
Russ Cox [Thu, 5 Apr 2012 17:13:34 +0000 (13:13 -0400)] 
 
A+C: Stéphane Travostino (individual CLA)
R=golang-dev
CC=golang-dev
https://golang.org/cl/
5991048 
 
Dmitriy Vyukov [Thu, 5 Apr 2012 17:02:20 +0000 (21:02 +0400)] 
 
runtime: minor refactoring in preparation for parallel GC
factor sweepspan() out of sweep(), no logical changes
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5991047 
 
Dmitriy Vyukov [Thu, 5 Apr 2012 16:48:28 +0000 (20:48 +0400)] 
 
runtime: make GC stats per-M
This is factored out part of:
https://golang.org/cl/
5279048 /
(Parallel GC)
benchmark                             old ns/op    new ns/op    delta
garbage.BenchmarkParser              
3999106750    3975026500    -0.60%
garbage.BenchmarkParser-2            
3720553750    3719196500    -0.04%
garbage.BenchmarkParser-4            
3502857000    3474980500    -0.80%
garbage.BenchmarkParser-8            
3375448000    3341310500    -1.01%
garbage.BenchmarkParserLastPause      
329401000     324097000    -1.61%
garbage.BenchmarkParserLastPause-2    
208953000     214222000    +2.52%
garbage.BenchmarkParserLastPause-4    
110933000     111656000    +0.65%
garbage.BenchmarkParserLastPause-8     
71969000      78230000    +8.70%
garbage.BenchmarkParserPause          
230808842     197237400   -14.55%
garbage.BenchmarkParserPause-2        
123674365     125197595    +1.23%
garbage.BenchmarkParserPause-4         
80518525      85710333    +6.45%
garbage.BenchmarkParserPause-8         
58310243      56940512    -2.35%
garbage.BenchmarkTree2                 
31471700      31289400    -0.58%
garbage.BenchmarkTree2-2               
21536800      21086300    -2.09%
garbage.BenchmarkTree2-4               
11074700      10880000    -1.76%
garbage.BenchmarkTree2-8                
7568600       7351400    -2.87%
garbage.BenchmarkTree2LastPause       
314664000     312840000    -0.58%
garbage.BenchmarkTree2LastPause-2     
215319000     210815000    -2.09%
garbage.BenchmarkTree2LastPause-4     
110698000     108751000    -1.76%
garbage.BenchmarkTree2LastPause-8      
75635000      73463000    -2.87%
garbage.BenchmarkTree2Pause           
174280857     173147571    -0.65%
garbage.BenchmarkTree2Pause-2         
131332714     129665761    -1.27%
garbage.BenchmarkTree2Pause-4          
93803095      93422904    -0.41%
garbage.BenchmarkTree2Pause-8          
86242333      85146761    -1.27%
R=rsc
CC=golang-dev
https://golang.org/cl/
5987045 
 
Dmitriy Vyukov [Thu, 5 Apr 2012 16:35:54 +0000 (20:35 +0400)] 
 
test/bench/garbage: fix parser benchmark
+add standard bench output to tree2
+print GOMAXPROCS as go test does
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5992044 
 
Dmitriy Vyukov [Thu, 5 Apr 2012 14:59:50 +0000 (18:59 +0400)] 
 
runtime: replace XOR AX, AX with MOV $0, AX
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5985048 
 
Dmitriy Vyukov [Thu, 5 Apr 2012 14:47:43 +0000 (18:47 +0400)] 
 
runtime: add 64-bit atomics
This is factored out part of:
https://golang.org/cl/
5279048 /
(Parallel GC)
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5985047 
 
Dmitriy Vyukov [Thu, 5 Apr 2012 14:37:46 +0000 (18:37 +0400)] 
 
runtime: remove redundant code
R=rsc
CC=golang-dev
https://golang.org/cl/
5987046 
 
Hong Ruiqi [Thu, 5 Apr 2012 12:37:07 +0000 (22:37 +1000)] 
 
doc/go_spec: fix typo
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
5990043 
 
Alex Brainman [Thu, 5 Apr 2012 05:17:24 +0000 (15:17 +1000)] 
 
path/filepath: move out of temp directory before deleting it in TestAbs
Fixes #3476.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
5986045 
 
Dave Cheney [Thu, 5 Apr 2012 01:39:12 +0000 (11:39 +1000)] 
 
misc/dist: include directories in distribution tar and zip files.
Fixes #3458.
R=adg, dsymonds
CC=golang-dev
https://golang.org/cl/
5969071 
 
Andrew Gerrand [Thu, 5 Apr 2012 01:17:18 +0000 (11:17 +1000)] 
 
doc: shorten project dashboard link
Fixes #3420.
(which was already fixed)
R=golang-dev, bradfitz, dsymonds
CC=golang-dev
https://golang.org/cl/
5987043 
 
Andrew Gerrand [Thu, 5 Apr 2012 01:16:37 +0000 (11:16 +1000)] 
 
misc/dist: label 386 and amd64 as "32-bit x86" and "64-bit x86"
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
5986043 
 
Ian Lance Taylor [Thu, 5 Apr 2012 00:41:36 +0000 (17:41 -0700)] 
 
syscall, net: use native endianness for Linux netlink messages
Tested using 6g and gccgo on x86_64 GNU/Linux and using gccgo
on PowerPC GNU/Linux (which is big-endian).
R=golang-dev, bradfitz, mikioh.mikioh, iant
CC=golang-dev
https://golang.org/cl/
5975073 
 
Adam Langley [Wed, 4 Apr 2012 16:53:59 +0000 (12:53 -0400)] 
 
crypto/rsa: only enforce that de ≡ 1 mod |(ℤ/nℤ)*| in order to load private keys generated by GnuTLS.
Previously we checked that de ≡ 1 mod φ(n). Since φ(n) is a multiple
of |(ℤ/nℤ)*|, this encompassed the new check, but it was too strict as
keys generated by GnuTLS would be rejected when gcd(p-1,q-1)≠1.
(Also updated the error strings in crypto/rsa to contain the package name, which some were missing.)
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
5867043 
 
Shenghou Ma [Wed, 4 Apr 2012 15:14:54 +0000 (23:14 +0800)] 
 
build: unset GOROOT_FINAL before tests
        Fix the builders.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5976068 
 
Brad Fitzpatrick [Wed, 4 Apr 2012 14:24:13 +0000 (07:24 -0700)] 
 
cmd/go: in go get, don't try to perform discovery on non-hosts
Before, "go get -v foo/bar" was assuming "foo" was a hostname
and trying to perform discovery on it. Now, require a dot in
the first path component (the hostname).
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5981057 
 
Dmitry Chestnykh [Wed, 4 Apr 2012 13:52:42 +0000 (09:52 -0400)] 
 
encoding/ascii85: fix panic caused by special case
Special case for encoding 4 zeros as 'z' didn't
update source slice, causing 'index out of bounds'
panic in destination slice.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5970078 
 
Charles L. Dorian [Wed, 4 Apr 2012 13:45:22 +0000 (09:45 -0400)] 
 
math: update Gamma special cases
Match new C99 values for special cases.
Fixes #2977.
R=rsc, golang-dev
CC=golang-dev
https://golang.org/cl/
5972058 
 
Michael Lewis [Tue, 3 Apr 2012 22:36:48 +0000 (15:36 -0700)] 
 
sql: Propagate error from subsetTypeArgs in Exec
Fixes #3449
R=golang-dev
CC=bradfitz, golang-dev
https://golang.org/cl/
5970076 
 
Rob Pike [Tue, 3 Apr 2012 20:54:39 +0000 (06:54 +1000)] 
 
time.RFC822: make the string standard-compliant
For mysterious reasons, the existing string was just wrong: it was missing a colon.
There is no apparent reason for this discrepancy.
This should be safe to fix because existing uses would not be RFC822-compliant;
people cannot be depending on it to generate correct mail headers.
Fixes #3444.
R=golang-dev, dsymonds, iant, rsc
CC=golang-dev
https://golang.org/cl/
5969072 
 
Brad Fitzpatrick [Tue, 3 Apr 2012 20:38:57 +0000 (13:38 -0700)] 
 
A+C: add Michael Lewis (Individual CLA)
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5970077 
 
Brad Fitzpatrick [Tue, 3 Apr 2012 19:33:22 +0000 (12:33 -0700)] 
 
misc/dist: check return value from filepath.Walk
Doesn't fix any known issue. This bit me in some unrelated
code and I thought of this tool.
R=golang-dev, krautz, mikkel
CC=golang-dev
https://golang.org/cl/
5976067 
 
Shenghou Ma [Tue, 3 Apr 2012 16:04:36 +0000 (00:04  +0800)] 
 
5c, 6c, 8c: take GOROOT_FINAL into consideration
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5936050 
 
Shenghou Ma [Tue, 3 Apr 2012 16:03:42 +0000 (00:03  +0800)] 
 
5a, 6a, 8a: take GOROOT_FINAL into consideration
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5940052 
 
Shenghou Ma [Tue, 3 Apr 2012 16:00:26 +0000 (00:00  +0800)] 
 
godoc: update appinit.go, apply !appengine build constrain to main.go
R=adg, dsymonds
CC=golang-dev
https://golang.org/cl/
5969063 
 
Dave Cheney [Tue, 3 Apr 2012 02:14:02 +0000 (12:14 +1000)] 
 
encoding/base64: fix panic when input len is not a multiple of 4
Fixes #3442.
R=for.go.yong, dsymonds, sougou, minux.ma, rsc
CC=golang-dev
https://golang.org/cl/
5975052 
 
Rob Pike [Tue, 3 Apr 2012 01:44:52 +0000 (11:44 +1000)] 
 
text/template: pipelined arg was not typechecked
Without this fix, an erroneous template causes a panic; should be caught safely.
The bug did not affect correct templates.
Fixes #3267.
R=golang-dev, dsymonds, rsc
CC=golang-dev
https://golang.org/cl/
5900065 
 
Alex Brainman [Tue, 3 Apr 2012 01:39:38 +0000 (11:39 +1000)] 
 
time: fix handling of locations with no dst on windows
Fixes #3437.
R=rsc
CC=golang-dev
https://golang.org/cl/
5967063 
 
Andrew Gerrand [Mon, 2 Apr 2012 22:10:51 +0000 (08:10 +1000)] 
 
misc/dashboard: set api_version to go1
R=golang-dev
CC=golang-dev
https://golang.org/cl/
5952046 
 
Andrew Gerrand [Mon, 2 Apr 2012 22:10:21 +0000 (08:10 +1000)] 
 
doc: sync playground.js
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5956043 
 
Peter Weinberger [Mon, 2 Apr 2012 17:05:09 +0000 (13:05 -0400)] 
 
doc/code.html: change 'affect' to 'effect'.
Fixes #3429.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5966047 
 
Sameer Ajmani [Mon, 2 Apr 2012 16:59:37 +0000 (12:59 -0400)] 
 
misc/emacs: fix go-mode syntax table and whitespace handling.
- flag * and / as comment characters
- mark newline as a comment-ender
- include newline in go-mode-whitespace-p
Thanks Jonathan Amsterdam and Steve Yegge for the patch!
R=golang-dev, rsc
CC=golang-dev, jba, stevey
https://golang.org/cl/
5938056 
 
Russ Cox [Mon, 2 Apr 2012 16:59:02 +0000 (12:59 -0400)] 
 
C: add Peter Weinberger (Google CLA)
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
5976059 
 
Russ Cox [Mon, 2 Apr 2012 16:55:23 +0000 (12:55 -0400)] 
 
codereview: give advice on 'cannot create CL outside default branch'
Fixes #3430.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
5981047 
 
Benny Siegert [Mon, 2 Apr 2012 16:06:05 +0000 (12:06 -0400)] 
 
exp/utf8string: Correct package name in error messages
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5969051 
 
Maxim Pimenov [Mon, 2 Apr 2012 15:27:50 +0000 (11:27 -0400)] 
 
runtime: fix a comment
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5975043 
 
Ryan Hitchman [Mon, 2 Apr 2012 15:00:55 +0000 (11:00 -0400)] 
 
gc: improve error message for composite literals with unexpected newlines
R=golang-dev, r, rsc
CC=golang-dev
https://golang.org/cl/
5857045 
 
Shenghou Ma [Mon, 2 Apr 2012 14:33:38 +0000 (22:33 +0800)] 
 
cmd/dist, sudo.bash: don't mention sudo.bash if cov or prof is not present
        Fixes #3422.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5967057 
 
Shenghou Ma [Mon, 2 Apr 2012 10:46:24 +0000 (18:46 +0800)] 
 
gobuilder: work with codereview plugin enabled in .hgrc
        Fixes #3312.
R=golang-dev, adg
CC=golang-dev
https://golang.org/cl/
5907065 
 
Mikkel Krautz [Mon, 2 Apr 2012 06:34:11 +0000 (16:34 +1000)] 
 
dist: make sure OS X packages follow symlinks when installing
R=adg
CC=golang-dev
https://golang.org/cl/
5970061 
 
Aaron Kemp [Sat, 31 Mar 2012 00:51:24 +0000 (17:51 -0700)] 
 
doc/effective_go.html: Add missing '...' for fmt.Sprintf()
The '...' was missing on a call to fmt.Sprintf() which would result in
the slice being printed instead of the correct result.
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/
5967051 
 
Robert Griesemer [Sat, 31 Mar 2012 00:51:07 +0000 (17:51 -0700)] 
 
A+C: added Aaron Kemp (Corporate CLA)
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
5966054 
 
Robert Griesemer [Fri, 30 Mar 2012 17:42:56 +0000 (10:42 -0700)] 
 
godoc: replace servePage's positional argument list
R=golang-dev, adg, bradfitz
CC=golang-dev
https://golang.org/cl/
5869050 
 
Ian Lance Taylor [Fri, 30 Mar 2012 15:42:21 +0000 (08:42 -0700)] 
 
test: add some tests of valid code that failed with gccgo
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
5971044 
 
Shenghou Ma [Fri, 30 Mar 2012 07:00:23 +0000 (15:00 +0800)] 
 
doc/codewalk/markov: fix syntax and broken link
        Part of issue 3424.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
5955050 
 
Shenghou Ma [Fri, 30 Mar 2012 06:07:40 +0000 (14:07 +0800)] 
 
doc/code.html: fix broken dashboard link
        Fixes #3420.
        Part of issue 3424.
R=golang-dev, cldorian, adg, r
CC=golang-dev
https://golang.org/cl/
5958046 
 
Shenghou Ma [Fri, 30 Mar 2012 06:06:12 +0000 (14:06 +0800)] 
 
doc/go1: minor fixes
        Fixes #3427.
        Part of issue 3424.
R=golang-dev, bradfitz, r
CC=golang-dev
https://golang.org/cl/
5959045 
 
Shenghou Ma [Fri, 30 Mar 2012 06:04:03 +0000 (14:04 +0800)] 
 
doc/go_spec: fix broken link
        Part of issue 3424
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
5955049 
 
David Symonds [Fri, 30 Mar 2012 04:27:39 +0000 (15:27 +1100)] 
 
exp/terminal: delete.
This is now known as code.google.com/p/go.crypto/ssh/terminal.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
5970044 
 
Rob Pike [Fri, 30 Mar 2012 02:07:10 +0000 (13:07 +1100)] 
 
cmd/go: update docs about tags for get command
"go1" dominates. Delete the text about weekly and release.
We can revisit this once the situation changes.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/
5969043 
 
Andrew Gerrand [Wed, 28 Mar 2012 12:44:45 +0000 (23:44 +1100)] 
 
tag weekly.2012-03-27 and go1 
 
Andrew Gerrand [Wed, 28 Mar 2012 12:41:03 +0000 (23:41 +1100)] 
 
weekly.2012-03-27 
 
Francisco Souza [Wed, 28 Mar 2012 03:20:51 +0000 (14:20 +1100)] 
 
doc: added The Go image package article
Orignally published on The Go Programming Language, September 21, 2011.
http://blog.golang.org/2011/09/go-image-package.html
Update #2547
R=adg, nigeltao
CC=golang-dev
https://golang.org/cl/
5933049 
 
Andrew Gerrand [Wed, 28 Mar 2012 01:45:39 +0000 (12:45 +1100)] 
 
misc/dist: it sucks hwhen you forget to fix typos
R=golang-dev
CC=golang-dev
https://golang.org/cl/
5937049 
 
Alex Brainman [Wed, 28 Mar 2012 01:27:36 +0000 (12:27 +1100)] 
 
path/filepath: correct comment in EvalSymlinks
R=golang-dev, r
CC=golang-dev, hcwfrichter
https://golang.org/cl/
5934046 
 
Andrew Gerrand [Wed, 28 Mar 2012 01:24:43 +0000 (12:24 +1100)] 
 
misc/dist: support upload only (no build)
R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/
5940050 
 
Andrew Gerrand [Wed, 28 Mar 2012 00:38:34 +0000 (11:38 +1100)] 
 
doc: link to Go Project Dashboard from package list
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/
5937048 
 
Andrew Gerrand [Tue, 27 Mar 2012 22:13:48 +0000 (09:13 +1100)] 
 
cmd/godoc: use virtual filesystem to implement -templates flag
R=golang-dev, gri, rsc
CC=golang-dev
https://golang.org/cl/
5921045 
 
Russ Cox [Tue, 27 Mar 2012 16:22:19 +0000 (12:22 -0400)] 
 
runtime: work around false negative in deadlock detection
Not a complete fix for issue 3342, but fixes the trivial case.
There may still be a race in the instants before and after
a scavenger-induced garbage collection.
Intended to be "obviously safe": a call to runtime·gosched
before main.main is no different than a call to runtime.Gosched
at the beginning of main.main, and it is (or had better be)
safe to call runtime.Gosched at any point during main.
Update #3342.
R=iant
CC=golang-dev
https://golang.org/cl/
5919052 
 
Russ Cox [Tue, 27 Mar 2012 15:57:39 +0000 (11:57 -0400)] 
 
cmd/go: respect $GOBIN always
Another attempt at https://golang.org/cl/
5754088 .
Before, we only consulted $GOBIN for source code
found in $GOROOT, but that's confusing to explain
and less useful.  The new behavior lets users set
GOBIN=$HOME/bin and have all go-compiled binaries
installed there.
Tested a few cases in test.bash.
Ran all.bash with and without $GOBIN and it works.
Even so, I expect it to break the builders,
like it did last time, we can debug from there.
Fixes #3269 (again).
Fixes #3396.
Fixes #3397.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/
5927051 
 
Russ Cox [Tue, 27 Mar 2012 15:16:10 +0000 (11:16 -0400)] 
 
go/build: fix import check
When we find a package in DIR/src/foo, we only let it
be known as foo if there is no other foo in an earlier
GOPATH directory or the GOROOT directory.
The GOROOT check was looking in GOROOT/src/foo
instead of GOROOT/src/pkg/foo, which meant that
the import paths "lib9", "libbio", "libmach", and so
on were unavailable, and the import paths "math",
"errors", and so on were available.  Correct this.
Fixes #3390.
R=golang-dev, minux.ma
CC=golang-dev
https://golang.org/cl/
5927050