runtime: add stackguard0 to G
This is part of preemptive scheduler.
stackguard0 is checked in split stack checks and can be set to StackPreempt.
stackguard is not set to StackPreempt (holds the original value).

R=golang-dev, daniel.morsing, iant
CC=golang-dev
https://codereview.appspot.com/9875043
runtime: introduce preemption function (not used for now)
This is part of preemptive scheduler.

R=golang-dev, cshapiro, iant
CC=golang-dev
https://codereview.appspot.com/9843046
runtime: disable preemption in several scheduler functions
Required for preemptive scheduler, see the comments for details.

R=golang-dev, khr, iant, khr
CC=golang-dev
https://codereview.appspot.com/9740051
test/stress: fix a goroutine leak in threadRing stresstest

Fixes issue 5527

R=golang-dev, dvyukov
CC=golang-dev
https://codereview.appspot.com/9955043

Committer: Brad Fitzpatrick <bradfitz@golang.org>
doc/articles: use C90 standard functions in the cgo article.

R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/9953043
compress/bzip2: faster decoding.

benchmark                old ns/op    new ns/op    delta
BenchmarkDecodeDigits     19451173     14347829  -26.24%
BenchmarkDecodeTwain      57516800     42619978  -25.90%

benchmark                 old MB/s     new MB/s  speedup
BenchmarkDecodeDigits         2.22         3.01    1.36x
BenchmarkDecodeTwain          2.17         2.93    1.35x

R=golang-dev, dave, bradfitz, agl
CC=golang-dev
https://codereview.appspot.com/9915043
cmd/go: document flag passing for tests
Fixes issue 5566.

R=rsc
CC=gobot, golang-dev
https://codereview.appspot.com/9882043
cmd/ld, runtime: clean up CL 9666047

Remove unnecessary ( ) around == in && clause.
Add { } around multiline if body, even though it's one statement.

Add runtime: prefix to printed errors.

R=cshapiro, iant
CC=golang-dev
https://codereview.appspot.com/9685047
runtime: update defs_windows_*.h files

New version of cmd/cgo from
https://codereview.appspot.com/9574043/
is used to regenerate these.

R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/9679046
doc: add Game of Life to playground toys

R=golang-dev, dsymonds, r
CC=golang-dev
https://codereview.appspot.com/9961043
cmd/gc: fix missing slice/array types in export data.

Fixes issue 5614.

R=golang-dev
CC=golang-dev
https://codereview.appspot.com/9953044
cmd/6c, cmd/8c: avoid generating long multiplication when not necessary.

On amd64
benchmark                        old ns/op    new ns/op    delta
BenchmarkHashStringSpeed                91           74  -18.49%
BenchmarkHashInt32Speed                 54           45  -17.88%
BenchmarkHashInt64Speed                 76           58  -23.53%
BenchmarkHashStringArraySpeed          231          188  -18.61%

Fixes issue 5367.

R=golang-dev, iant, dave, daniel.morsing, ality, rsc
CC=golang-dev
https://codereview.appspot.com/9040043
encoding/gob: consistently use unsafe.Pointer for pointer values

Fixes issue 5621.

R=golang-dev, cshapiro, r, fullung
CC=golang-dev
https://codereview.appspot.com/9988043
cmd/ld: fix gcdata and gcbss symbols

These two symbols don't show up in the Go symbol table
since they're defined in dodata which is called sometime
after symtab. They do, however, show up in the ELF symbol
table.

This regression was introduced in changeset 01c40d533367.

Also, remove the corresponding strings from the ELF strtab
section now that they're unused.

R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/8650043

Committer: Ian Lance Taylor <iant@golang.org>
codereview: don't warn about secret commits

Normally the codereview plugin disables adding new commits
when not using the submit command. Unfortunately this makes
it impossible to use the Mercurial Queues extension at the
same time.

A feature called "Phases" was introduced in Mercurial 2.1
that allows marking commits as being secret; this means
they will never be pushed to the upstream repository.

We can take advantage of this feature to allow the use of
Mercurial Queues if the mq.secret option has been set in
hgrc(5) and a recent version of Mercurial is used.

R=golang-dev, rsc, minux.ma
CC=golang-dev
https://codereview.appspot.com/7398055

Committer: Brad Fitzpatrick <bradfitz@golang.org>
Merge branch 'master' into gitfix