misc/emacs: Fix a failure when /tmp/<file>.go exists.

R=sameer
CC=golang-dev
http://codereview.appspot.com/6296060

Committer: Sameer Ajmani <sameer@golang.org>
      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
http://codereview.appspot.com/6305065

Committer: Robert Griesemer <gri@golang.org>
math/big: various cleanups

R=golang-dev, iant
CC=golang-dev
http://codereview.appspot.com/6295072
math/big: fix binaryGCD

R=rsc
CC=golang-dev
http://codereview.appspot.com/6297085
runtime: improved continuity in hash computation

Fixes issue 3695.

R=r, dave, rsc
CC=golang-dev
http://codereview.appspot.com/6304062

Committer: Russ Cox <rsc@golang.org>
go/build: fix boolean negation

!(linux&cgo | darwin&cgo)
= (!linux|!cgo) & (!darwin|!cgo)
= (!linux&!darwin) | !cgo  // new comment
≠ !linux | !darwin | !cgo  // old comment

Fixes issue 3726.

R=golang-dev, bsiegert
CC=golang-dev
http://codereview.appspot.com/6306076
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
http://codereview.appspot.com/6281044
godoc: show comments in various filtered views

Fixes issue 3454.

R=rsc
CC=golang-dev
http://codereview.appspot.com/6305069
syscall: fix windows copyFindData

R=golang-dev, bradfitz
CC=golang-dev
http://codereview.appspot.com/6301076
math/big: correctly test for positive inputs in Int.GCD

Also: better GCD tests.

R=rsc
CC=golang-dev
http://codereview.appspot.com/6295076
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
http://codereview.appspot.com/6294071
net/http: use index.html modtime (not directory) for If-Modified-Since

Thanks to Håvid Falch for finding the problem.

Fixes issue 3414

R=r, rsc
CC=golang-dev
http://codereview.appspot.com/6300081
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 issue 3273.

R=bsiegert, rsc
CC=golang-dev
http://codereview.appspot.com/6294067
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
http://codereview.appspot.com/6280049
doc: document go1.0.2

R=golang-dev, dave, rsc
CC=golang-dev
http://codereview.appspot.com/6298079
tag go1.0.2

R=golang-dev, rsc, dsymonds, minux.ma
CC=golang-dev
http://codereview.appspot.com/6305089