{"push_id":663434229,"size":75,"distinct_size":1,"ref":"refs/heads/fix-windows-dist-testso","head":"f8515f6023386d4e9c46bf9277835cf64fb310fc","before":"2a376a5cafc72e2ad03c73a1e6652986c3b6eeaf","commits":[{"sha":"82359d1c2d835d44d84408b52fd8eaf4965ad363","author":{"email":"e2f4d2eec1d9a1f781345cdd7260d7d52e6468ae@gmail.com","name":"Mikio Hara"},"message":"net: enable cgo test on solaris\n\nChange-Id: I4ade27469d82839b4396e1a88465dddc6b31d578\nReviewed-on: https://go-review.googlesource.com/9838\nReviewed-by: Aram Hăvărneanu <aram@mgk.ro>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/82359d1c2d835d44d84408b52fd8eaf4965ad363"},{"sha":"d9f69196dee8c95e4669d18619f3e3729599e90f","author":{"email":"745997618b2e63832cd279f6719134dd2e9f1399@chromium.org","name":"Rahul Chaudhry"},"message":"build: correct quoting of args in run.bash\n\nChange-Id: I72df4d979212d8af74a4d2763423346eb6ba14f2\nReviewed-on: https://go-review.googlesource.com/9892\nReviewed-by: Brad Fitzpatrick <bradfitz@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/d9f69196dee8c95e4669d18619f3e3729599e90f"},{"sha":"347536201124400705d0d217e2180c9f01066808","author":{"email":"72d850dbd8858b791995463d8539b5a379577f28@golang.org","name":"Shenghou Ma"},"message":"syscall: fix InotifyInit on linux/arm64\n\nThere is no SYS_INOTIFY_INIT on linux/arm64, only SYS_INOTIFY_INIT1.\n\nChange-Id: I97f430f2c2b910fb19dce495ff1adf591b8634fc\nReviewed-on: https://go-review.googlesource.com/9870\nRun-TryBot: Minux Ma <minux@golang.org>\nTryBot-Result: Gobot Gobot <gobot@golang.org>\nReviewed-by: Ian Lance Taylor <iant@golang.org>\nReviewed-by: Dave Cheney <dave@cheney.net>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/347536201124400705d0d217e2180c9f01066808"},{"sha":"2320b56af1b26e4c945c282a89c53e599596b86c","author":{"email":"cbb7353e6d953ef360baf960c122346276c6e320@mezard.eu","name":"Patrick Mezard"},"message":"internal/syscall/windows: increase registry.ExpandString buffer\n\nExpandString correctly loops on the syscall until it reaches the\nrequired buffer size but truncates it before converting it back to\nstring. The truncation limit is increased to 2^15 bytes which is the\ndocumented maximum ExpandEnvironmentStrings output size.\n\nThis fixes TestExpandString on systems where len($PATH) > 1024.\n\nChange-Id: I2a6f184eeca939121b458bcffe1a436a50f3298e\nReviewed-on: https://go-review.googlesource.com/9805\nReviewed-by: Brad Fitzpatrick <bradfitz@golang.org>\nReviewed-by: Alex Brainman <alex.brainman@gmail.com>\nRun-TryBot: Alex Brainman <alex.brainman@gmail.com>\nTryBot-Result: Gobot Gobot <gobot@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/2320b56af1b26e4c945c282a89c53e599596b86c"},{"sha":"c8b31c5cea0ecdb7eec44752701a653c325688df","author":{"email":"72d850dbd8858b791995463d8539b5a379577f28@golang.org","name":"Shenghou Ma"},"message":"go/build: fix typo\n\nThanks Dmitri Shuralyov for pointing it out.\n\nChange-Id: If9c5ac0e56d601d327b2b682ee3548037439cb83\nReviewed-on: https://go-review.googlesource.com/9881\nReviewed-by: Josh Bleecher Snyder <josharian@gmail.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/c8b31c5cea0ecdb7eec44752701a653c325688df"},{"sha":"cbcc7584de99dbefd3e019d2a53442b30d5af989","author":{"email":"e2f4d2eec1d9a1f781345cdd7260d7d52e6468ae@gmail.com","name":"Mikio Hara"},"message":"net: increase timeout in TestWriteTimeoutFluctuation on darwin/arm\n\nOn darwin/arm, the test sometimes fails with:\n\nProcess 557 resuming\n--- FAIL: TestWriteTimeoutFluctuation (1.64s)\n\ttimeout_test.go:706: Write took over 1s; expected 0.1s\nFAIL\nProcess 557 exited with status = 1 (0x00000001)\ngo_darwin_arm_exec: timeout running tests\n\nThis change increaes timeout on iOS builders from 1s to 3s as a\ntemporarily fix.\n\nUpdates #10775.\n\nChange-Id: Ifdaf99cf5b8582c1a636a0f7d5cc66bb276efd72\nReviewed-on: https://go-review.googlesource.com/9915\nReviewed-by: Minux Ma <minux@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/cbcc7584de99dbefd3e019d2a53442b30d5af989"},{"sha":"dce432b388541d9a54be1bdebb1a6ff13e426427","author":{"email":"72d850dbd8858b791995463d8539b5a379577f28@golang.org","name":"Shenghou Ma"},"message":"misc/trace: add license for the trace-viewer\n\nThe trace-viewer doesn't use the Go license, so it makes sense\nto include the license text into the README.md file.\n\nWhile we're at here, reformat existing text using real Markdown\nsyntax.\n\nChange-Id: I13e42d3cc6a0ca7e64e3d46ad460dc0460f7ed09\nReviewed-on: https://go-review.googlesource.com/9882\nReviewed-by: Rob Pike <r@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/dce432b388541d9a54be1bdebb1a6ff13e426427"},{"sha":"19e81a9b3b0d103fe7a9a9605c16eb4ba1f20ed8","author":{"email":"cbb7353e6d953ef360baf960c122346276c6e320@mezard.eu","name":"Patrick Mezard"},"message":"internal/syscall/windows/registry: handle invalid integer values\n\nI have around twenty of such values on a Windows 7 development machine.\nregedit displays (translated): \"invalid 32-bits DWORD value\".\n\nChange-Id: Ib37a414ee4c85e891b0a25fed2ddad9e105f5f4e\nReviewed-on: https://go-review.googlesource.com/9901\nReviewed-by: Alex Brainman <alex.brainman@gmail.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/19e81a9b3b0d103fe7a9a9605c16eb4ba1f20ed8"},{"sha":"db6f88a84b126877bd523df8c45af06779ce0e42","author":{"email":"e6db6d60a117315d4db28c5aa49e186fd9c45709@gmail.com","name":"Daniel Morsing"},"message":"runtime: enable profiling on g0\n\nSince we now have stack information for code running on the\nsystemstack, we can traceback over it. To make cpu profiles useful,\nadd a case in gentraceback to jump over systemstack switches.\n\nFixes #10609.\n\nChange-Id: I21f47fcc802c07c5d4a1ada56374314e388a6dc7\nReviewed-on: https://go-review.googlesource.com/9506\nReviewed-by: Dmitry Vyukov <dvyukov@google.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/db6f88a84b126877bd523df8c45af06779ce0e42"},{"sha":"7d9e16abc6bea2eb12d718b578f91328af99586a","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"runtime: add benchmark of heapBitsSetType\n\nThere was an old benchmark that measured this indirectly\nvia allocation, but I don't understand how to factor out the\nallocation cost when interpreting the numbers.\n\nReplace with a benchmark that only calls heapBitsSetType,\nthat does not allocate. This was not possible when the\nbenchmark was first written, because heapBitsSetType had\nnot been factored out of mallocgc.\n\nChange-Id: I30f0f02362efab3465a50769398be859832e6640\nReviewed-on: https://go-review.googlesource.com/9701\nReviewed-by: Austin Clements <austin@google.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/7d9e16abc6bea2eb12d718b578f91328af99586a"},{"sha":"6d8a147bef8ee28eb647db21ea91ecb823fa2480","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"runtime: use 1-bit pointer bitmaps in type representation\n\nThe type information in reflect.Type and the GC programs is now\n1 bit per word, down from 2 bits.\n\nThe in-memory unrolled type bitmap representation are now\n1 bit per word, down from 4 bits.\n\nThe conversion from the unrolled (now 1-bit) bitmap to the\nheap bitmap (still 4-bit) is not optimized. A followup CL will\nwork on that, after the heap bitmap has been converted to 2-bit.\n\nThe typeDead optimization, in which a special value denotes\nthat there are no more pointers anywhere in the object, is lost\nin this CL. A followup CL will bring it back in the final form of\nheapBitsSetType.\n\nChange-Id: If61e67950c16a293b0b516a6fd9a1c755b6d5549\nReviewed-on: https://go-review.googlesource.com/9702\nReviewed-by: Austin Clements <austin@google.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/6d8a147bef8ee28eb647db21ea91ecb823fa2480"},{"sha":"0234dfd493b9bb009728d60658aa0ccdd2463c09","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"runtime: use 2-bit heap bitmap (in place of 4-bit)\n\nPrevious CLs changed the representation of the non-heap type bitmaps\nto be 1-bit bitmaps (pointer or not). Before this CL, the heap bitmap\nstored a 2-bit type for each word and a mark bit and checkmark bit\nfor the first word of the object. (There used to be additional per-word bits.)\n\nReduce heap bitmap to 2-bit, with 1 dedicated to pointer or not,\nand the other used for mark, checkmark, and \"keep scanning forward\nto find pointers in this object.\" See comments for details.\n\nThis CL replaces heapBitsSetType with very slow but obviously correct code.\nA followup CL will optimize it. (Spoiler: the new code is faster than Go 1.4 was.)\n\nChange-Id: I999577a133f3cfecacebdec9cdc3573c235c7fb9\nReviewed-on: https://go-review.googlesource.com/9703\nReviewed-by: Rick Hudson <rlh@golang.org>\nReviewed-by: Austin Clements <austin@google.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/0234dfd493b9bb009728d60658aa0ccdd2463c09"},{"sha":"feb8a3b6169504040024e22b3eef5959554f9dbd","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"runtime: optimize heapBitsSetType\n\nFor the conversion of the heap bitmap from 4-bit to 2-bit fields,\nI replaced heapBitsSetType with the dumbest thing that could possibly work:\ntwo atomic operations (atomicand8+atomicor8) per 2-bit field.\n\nThis CL replaces that code with a proper implementation that\navoids the atomics whenever possible. Benchmarks vs base CL\n(before the conversion to 2-bit heap bitmap) and vs Go 1.4 below.\n\nCompared to Go 1.4, SetTypePtr (a 1-pointer allocation)\nis 10ns slower because a race against the concurrent GC requires the\nuse of an atomicor8 that used to be an ordinary write. This slowdown\nwas present even in the base CL.\n\nCompared to both Go 1.4 and base, SetTypeNode8 (a 10-word allocation)\nis 10ns slower because it too needs a new atomic, because with the\ndenser representation, the byte on the end of the allocation is now shared\nwith the object next to it; this was not true with the 4-bit representation.\n\nExcluding these two (fundamental) slowdowns due to the use of atomics,\nthe new code is noticeably faster than both Go 1.4 and the base CL.\n\nThe next CL will reintroduce the ``typeDead'' optimization.\n\nStats are from 5 runs on a MacBookPro10,2 (late 2012 Core i5).\n\nCompared to base CL (** = new atomic)\nname                  old mean              new mean              delta\nSetTypePtr            14.1ns × (0.99,1.02)  14.7ns × (0.93,1.10)     ~    (p=0.175)\nSetTypePtr8           18.4ns × (1.00,1.01)  18.6ns × (0.81,1.21)     ~    (p=0.866)\nSetTypePtr16          28.7ns × (1.00,1.00)  22.4ns × (0.90,1.27)  -21.88% (p=0.015)\nSetTypePtr32          52.3ns × (1.00,1.00)  33.8ns × (0.93,1.24)  -35.37% (p=0.001)\nSetTypePtr64          79.2ns × (1.00,1.00)  55.1ns × (1.00,1.01)  -30.43% (p=0.000)\nSetTypePtr126          118ns × (1.00,1.00)   100ns × (1.00,1.00)  -15.97% (p=0.000)\nSetTypePtr128          130ns × (0.92,1.19)    98ns × (1.00,1.00)  -24.36% (p=0.008)\nSetTypePtrSlice        726ns × (0.96,1.08)   760ns × (1.00,1.00)     ~    (p=0.152)\nSetTypeNode1          14.1ns × (0.94,1.15)  12.0ns × (1.00,1.01)  -14.60% (p=0.020)\nSetTypeNode1Slice      135ns × (0.96,1.07)    88ns × (1.00,1.00)  -34.53% (p=0.000)\nSetTypeNode8          20.9ns × (1.00,1.01)  32.6ns × (1.00,1.00)  +55.37% (p=0.000) **\nSetTypeNode8Slice      414ns × (0.99,1.02)   244ns × (1.00,1.00)  -41.09% (p=0.000)\nSetTypeNode64         80.0ns × (1.00,1.00)  57.4ns × (1.00,1.00)  -28.23% (p=0.000)\nSetTypeNode64Slice    2.15µs × (1.00,1.01)  1.56µs × (1.00,1.00)  -27.43% (p=0.000)\nSetTypeNode124         119ns × (0.99,1.00)   100ns × (1.00,1.00)  -16.11% (p=0.000)\nSetTypeNode124Slice   3.40µs × (1.00,1.00)  2.93µs × (1.00,1.00)  -13.80% (p=0.000)\nSetTypeNode126         120ns × (1.00,1.01)    98ns × (1.00,1.00)  -18.19% (p=0.000)\nSetTypeNode126Slice   3.53µs × (0.98,1.08)  3.02µs × (1.00,1.00)  -14.49% (p=0.002)\nSetTypeNode1024        726ns × (0.97,1.09)   740ns × (1.00,1.00)     ~    (p=0.451)\nSetTypeNode1024Slice  24.9µs × (0.89,1.37)  23.1µs × (1.00,1.00)     ~    (p=0.476)\n\nCompared to Go 1.4 (** = new atomic)\nname                  old mean               new mean              delta\nSetTypePtr            5.71ns × (0.89,1.19)  14.68ns × (0.93,1.10)  +157.24% (p=0.000) **\nSetTypePtr8           19.3ns × (0.96,1.10)   18.6ns × (0.81,1.21)      ~    (p=0.638)\nSetTypePtr16          30.7ns × (0.99,1.03)   22.4ns × (0.90,1.27)   -26.88% (p=0.005)\nSetTypePtr32          51.5ns × (1.00,1.00)   33.8ns × (0.93,1.24)   -34.40% (p=0.001)\nSetTypePtr64          83.6ns × (0.94,1.12)   55.1ns × (1.00,1.01)   -34.12% (p=0.001)\nSetTypePtr126          137ns × (0.87,1.26)    100ns × (1.00,1.00)   -27.10% (p=0.028)\nSetTypePtrSlice        865ns × (0.80,1.23)    760ns × (1.00,1.00)      ~    (p=0.243)\nSetTypeNode1          15.2ns × (0.88,1.12)   12.0ns × (1.00,1.01)   -20.89% (p=0.014)\nSetTypeNode1Slice      156ns × (0.93,1.16)     88ns × (1.00,1.00)   -43.57% (p=0.001)\nSetTypeNode8          23.8ns × (0.90,1.18)   32.6ns × (1.00,1.00)   +36.76% (p=0.003) **\nSetTypeNode8Slice      502ns × (0.92,1.10)    244ns × (1.00,1.00)   -51.46% (p=0.000)\nSetTypeNode64         85.6ns × (0.94,1.11)   57.4ns × (1.00,1.00)   -32.89% (p=0.001)\nSetTypeNode64Slice    2.36µs × (0.91,1.14)   1.56µs × (1.00,1.00)   -33.96% (p=0.002)\nSetTypeNode124         130ns × (0.91,1.12)    100ns × (1.00,1.00)   -23.49% (p=0.004)\nSetTypeNode124Slice   3.81µs × (0.90,1.22)   2.93µs × (1.00,1.00)   -23.09% (p=0.025)\n\nThere are fewer benchmarks vs Go 1.4 because unrolling directly\ninto the heap bitmap is not yet implemented, so those would not\nbe meaningful comparisons.\n\nThese benchmarks were not present in Go 1.4 as distributed.\nThe backport to Go 1.4 is in github.com/rsc/go's go14bench branch,\ncommit 71d5ee5.\n\nChange-Id: I95ed05a22bf484b0fc9efad549279e766c98d2b6\nReviewed-on: https://go-review.googlesource.com/9704\nReviewed-by: Rick Hudson <rlh@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/feb8a3b6169504040024e22b3eef5959554f9dbd"},{"sha":"54af9a3ba5f3e656077eab2e9305cbbb41d7b154","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"runtime: reintroduce ``dead'' space during GC scan\n\nReintroduce an optimization discarded during the initial conversion\nfrom 4-bit heap bitmaps to 2-bit heap bitmaps: when we reach the\nplace in the bitmap where there are no more pointers, mark that position\nfor the GC so that it can avoid scanning past that place.\n\nDuring heapBitsSetType we can also avoid initializing heap bitmap\nbeyond that location, which gives a bit of a win compared to Go 1.4.\nThis particular optimization (not initializing the heap bitmap) may not last:\nwe might change typedmemmove to use the heap bitmap, in which\ncase it would all need to be initialized. The early stop in the GC scan\nwill stay no matter what.\n\nCompared to Go 1.4 (github.com/rsc/go, branch go14bench):\nname                    old mean              new mean              delta\nSetTypeNode64           80.7ns × (1.00,1.01)  57.4ns × (1.00,1.01)  -28.83% (p=0.000)\nSetTypeNode64Dead       80.5ns × (1.00,1.01)  13.1ns × (0.99,1.02)  -83.77% (p=0.000)\nSetTypeNode64Slice      2.16µs × (1.00,1.01)  1.54µs × (1.00,1.01)  -28.75% (p=0.000)\nSetTypeNode64DeadSlice  2.16µs × (1.00,1.01)  1.52µs × (1.00,1.00)  -29.74% (p=0.000)\n\nCompared to previous CL:\nname                    old mean              new mean              delta\nSetTypeNode64           56.7ns × (1.00,1.00)  57.4ns × (1.00,1.01)   +1.19% (p=0.000)\nSetTypeNode64Dead       57.2ns × (1.00,1.00)  13.1ns × (0.99,1.02)  -77.15% (p=0.000)\nSetTypeNode64Slice      1.56µs × (1.00,1.01)  1.54µs × (1.00,1.01)   -0.89% (p=0.000)\nSetTypeNode64DeadSlice  1.55µs × (1.00,1.01)  1.52µs × (1.00,1.00)   -2.23% (p=0.000)\n\nThis is the last CL in the sequence converting from the 4-bit heap\nto the 2-bit heap, with all the same optimizations reenabled.\nCompared to before that process began (compared to CL 9701 patch set 1):\n\nname                    old mean              new mean              delta\nBinaryTree17             5.87s × (0.94,1.09)   5.91s × (0.96,1.06)    ~    (p=0.578)\nFannkuch11               4.32s × (1.00,1.00)   4.32s × (1.00,1.00)    ~    (p=0.474)\nFmtFprintfEmpty         89.1ns × (0.95,1.16)  89.0ns × (0.93,1.10)    ~    (p=0.942)\nFmtFprintfString         283ns × (0.98,1.02)   298ns × (0.98,1.06)  +5.33% (p=0.000)\nFmtFprintfInt            284ns × (0.98,1.04)   286ns × (0.98,1.03)    ~    (p=0.208)\nFmtFprintfIntInt         486ns × (0.98,1.03)   498ns × (0.97,1.06)  +2.48% (p=0.000)\nFmtFprintfPrefixedInt    400ns × (0.99,1.02)   408ns × (0.98,1.02)  +2.23% (p=0.000)\nFmtFprintfFloat          566ns × (0.99,1.01)   587ns × (0.98,1.01)  +3.69% (p=0.000)\nFmtManyArgs             1.91µs × (0.99,1.02)  1.94µs × (0.99,1.02)  +1.81% (p=0.000)\nGobDecode               15.5ms × (0.98,1.05)  15.8ms × (0.98,1.03)  +1.94% (p=0.002)\nGobEncode               11.9ms × (0.97,1.03)  12.0ms × (0.96,1.09)    ~    (p=0.263)\nGzip                     648ms × (0.99,1.01)   648ms × (0.99,1.01)    ~    (p=0.992)\nGunzip                   143ms × (1.00,1.00)   143ms × (1.00,1.01)    ~    (p=0.585)\nHTTPClientServer        89.2µs × (0.99,1.02)  90.3µs × (0.98,1.01)  +1.24% (p=0.000)\nJSONEncode              32.3ms × (0.97,1.06)  31.6ms × (0.99,1.01)  -2.29% (p=0.000)\nJSONDecode               106ms × (0.99,1.01)   107ms × (1.00,1.01)  +0.62% (p=0.000)\nMandelbrot200           6.02ms × (1.00,1.00)  6.03ms × (1.00,1.01)    ~    (p=0.250)\nGoParse                 6.57ms × (0.97,1.06)  6.53ms × (0.99,1.03)    ~    (p=0.243)\nRegexpMatchEasy0_32      162ns × (1.00,1.00)   161ns × (1.00,1.01)  -0.80% (p=0.000)\nRegexpMatchEasy0_1K      561ns × (0.99,1.02)   541ns × (0.99,1.01)  -3.67% (p=0.000)\nRegexpMatchEasy1_32      145ns × (0.95,1.04)   138ns × (1.00,1.00)  -5.04% (p=0.000)\nRegexpMatchEasy1_1K      864ns × (0.99,1.04)   887ns × (0.99,1.01)  +2.57% (p=0.000)\nRegexpMatchMedium_32     255ns × (0.99,1.04)   253ns × (0.99,1.01)  -1.05% (p=0.012)\nRegexpMatchMedium_1K    73.9µs × (0.98,1.04)  72.8µs × (1.00,1.00)  -1.51% (p=0.005)\nRegexpMatchHard_32      3.92µs × (0.98,1.04)  3.85µs × (1.00,1.01)  -1.88% (p=0.002)\nRegexpMatchHard_1K       120µs × (0.98,1.04)   117µs × (1.00,1.01)  -2.02% (p=0.001)\nRevcomp                  936ms × (0.95,1.08)   922ms × (0.97,1.08)    ~    (p=0.234)\nTemplate                 130ms × (0.98,1.04)   126ms × (0.99,1.01)  -2.99% (p=0.000)\nTimeParse                638ns × (0.98,1.05)   628ns × (0.99,1.01)  -1.54% (p=0.004)\nTimeFormat               674ns × (0.99,1.01)   668ns × (0.99,1.01)  -0.80% (p=0.001)\n\nThe slowdown of the first few benchmarks seems to be due to the new\natomic operations for certain small size allocations. But the larger\nbenchmarks mostly improve, probably due to the decreased memory\npressure from having half as much heap bitmap.\n\nCL 9706, which removes the (never used anymore) wbshadow mode,\ngets back what is lost in the early microbenchmarks.\n\nChange-Id: I37423a209e8ec2a2e92538b45cac5422a6acd32d\nReviewed-on: https://go-review.googlesource.com/9705\nReviewed-by: Rick Hudson <rlh@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/54af9a3ba5f3e656077eab2e9305cbbb41d7b154"},{"sha":"1635ab7dfef52eb8f6666e5fa38ac5866b561a5b","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"runtime: remove wbshadow mode\n\nThe write barrier shadow heap was very useful for\ndeveloping the write barriers initially, but it's no longer used,\nclunky, and dragging the rest of the implementation down.\n\nThe gccheckmark mode will find bugs due to missed barriers\nwhen they result in missed marks; wbshadow mode found the\nmissed barriers more aggressively, but it required an entire\nseparate copy of the heap. The gccheckmark mode requires\nno extra memory, making it more useful in practice.\n\nCompared to previous CL:\nname                   old mean              new mean              delta\nBinaryTree17            5.91s × (0.96,1.06)   5.72s × (0.97,1.03)  -3.12% (p=0.000)\nFannkuch11              4.32s × (1.00,1.00)   4.36s × (1.00,1.00)  +0.91% (p=0.000)\nFmtFprintfEmpty        89.0ns × (0.93,1.10)  86.6ns × (0.96,1.11)    ~    (p=0.077)\nFmtFprintfString        298ns × (0.98,1.06)   283ns × (0.99,1.04)  -4.90% (p=0.000)\nFmtFprintfInt           286ns × (0.98,1.03)   283ns × (0.98,1.04)  -1.09% (p=0.032)\nFmtFprintfIntInt        498ns × (0.97,1.06)   480ns × (0.99,1.02)  -3.65% (p=0.000)\nFmtFprintfPrefixedInt   408ns × (0.98,1.02)   396ns × (0.99,1.01)  -3.00% (p=0.000)\nFmtFprintfFloat         587ns × (0.98,1.01)   562ns × (0.99,1.01)  -4.34% (p=0.000)\nFmtManyArgs            1.94µs × (0.99,1.02)  1.89µs × (0.99,1.01)  -2.85% (p=0.000)\nGobDecode              15.8ms × (0.98,1.03)  15.7ms × (0.99,1.02)    ~    (p=0.251)\nGobEncode              12.0ms × (0.96,1.09)  11.8ms × (0.98,1.03)  -1.87% (p=0.024)\nGzip                    648ms × (0.99,1.01)   647ms × (0.99,1.01)    ~    (p=0.688)\nGunzip                  143ms × (1.00,1.01)   143ms × (1.00,1.01)    ~    (p=0.203)\nHTTPClientServer       90.3µs × (0.98,1.01)  89.1µs × (0.99,1.02)  -1.30% (p=0.000)\nJSONEncode             31.6ms × (0.99,1.01)  31.7ms × (0.98,1.02)    ~    (p=0.219)\nJSONDecode              107ms × (1.00,1.01)   111ms × (0.99,1.01)  +3.58% (p=0.000)\nMandelbrot200          6.03ms × (1.00,1.01)  6.01ms × (1.00,1.00)    ~    (p=0.077)\nGoParse                6.53ms × (0.99,1.03)  6.54ms × (0.99,1.02)    ~    (p=0.585)\nRegexpMatchEasy0_32     161ns × (1.00,1.01)   161ns × (0.98,1.05)    ~    (p=0.948)\nRegexpMatchEasy0_1K     541ns × (0.99,1.01)   559ns × (0.98,1.01)  +3.32% (p=0.000)\nRegexpMatchEasy1_32     138ns × (1.00,1.00)   137ns × (0.99,1.01)  -0.55% (p=0.001)\nRegexpMatchEasy1_1K     887ns × (0.99,1.01)   878ns × (0.99,1.01)  -0.98% (p=0.000)\nRegexpMatchMedium_32    253ns × (0.99,1.01)   252ns × (0.99,1.01)  -0.39% (p=0.001)\nRegexpMatchMedium_1K   72.8µs × (1.00,1.00)  72.7µs × (1.00,1.00)    ~    (p=0.485)\nRegexpMatchHard_32     3.85µs × (1.00,1.01)  3.85µs × (1.00,1.01)    ~    (p=0.283)\nRegexpMatchHard_1K      117µs × (1.00,1.01)   117µs × (1.00,1.00)    ~    (p=0.175)\nRevcomp                 922ms × (0.97,1.08)   903ms × (0.98,1.05)  -2.15% (p=0.021)\nTemplate                126ms × (0.99,1.01)   126ms × (0.99,1.01)    ~    (p=0.943)\nTimeParse               628ns × (0.99,1.01)   634ns × (0.99,1.01)  +0.92% (p=0.000)\nTimeFormat              668ns × (0.99,1.01)   698ns × (0.98,1.03)  +4.53% (p=0.000)\n\nIt's nice that the microbenchmarks are the ones helped the most,\nbecause those were the ones hurt the most by the conversion from\n4-bit to 2-bit heap bitmaps. This CL brings the overall effect of that\nprocess to (compared to CL 9706 patch set 1):\n\nname                   old mean              new mean              delta\nBinaryTree17            5.87s × (0.94,1.09)   5.72s × (0.97,1.03)  -2.57% (p=0.011)\nFannkuch11              4.32s × (1.00,1.00)   4.36s × (1.00,1.00)  +0.87% (p=0.000)\nFmtFprintfEmpty        89.1ns × (0.95,1.16)  86.6ns × (0.96,1.11)    ~    (p=0.090)\nFmtFprintfString        283ns × (0.98,1.02)   283ns × (0.99,1.04)    ~    (p=0.681)\nFmtFprintfInt           284ns × (0.98,1.04)   283ns × (0.98,1.04)    ~    (p=0.620)\nFmtFprintfIntInt        486ns × (0.98,1.03)   480ns × (0.99,1.02)  -1.27% (p=0.002)\nFmtFprintfPrefixedInt   400ns × (0.99,1.02)   396ns × (0.99,1.01)  -0.84% (p=0.001)\nFmtFprintfFloat         566ns × (0.99,1.01)   562ns × (0.99,1.01)  -0.80% (p=0.000)\nFmtManyArgs            1.91µs × (0.99,1.02)  1.89µs × (0.99,1.01)  -1.10% (p=0.000)\nGobDecode              15.5ms × (0.98,1.05)  15.7ms × (0.99,1.02)  +1.55% (p=0.005)\nGobEncode              11.9ms × (0.97,1.03)  11.8ms × (0.98,1.03)  -0.97% (p=0.048)\nGzip                    648ms × (0.99,1.01)   647ms × (0.99,1.01)    ~    (p=0.627)\nGunzip                  143ms × (1.00,1.00)   143ms × (1.00,1.01)    ~    (p=0.482)\nHTTPClientServer       89.2µs × (0.99,1.02)  89.1µs × (0.99,1.02)    ~    (p=0.740)\nJSONEncode             32.3ms × (0.97,1.06)  31.7ms × (0.98,1.02)  -1.95% (p=0.002)\nJSONDecode              106ms × (0.99,1.01)   111ms × (0.99,1.01)  +4.22% (p=0.000)\nMandelbrot200          6.02ms × (1.00,1.00)  6.01ms × (1.00,1.00)    ~    (p=0.417)\nGoParse                6.57ms × (0.97,1.06)  6.54ms × (0.99,1.02)    ~    (p=0.404)\nRegexpMatchEasy0_32     162ns × (1.00,1.00)   161ns × (0.98,1.05)    ~    (p=0.088)\nRegexpMatchEasy0_1K     561ns × (0.99,1.02)   559ns × (0.98,1.01)  -0.47% (p=0.034)\nRegexpMatchEasy1_32     145ns × (0.95,1.04)   137ns × (0.99,1.01)  -5.56% (p=0.000)\nRegexpMatchEasy1_1K     864ns × (0.99,1.04)   878ns × (0.99,1.01)  +1.57% (p=0.000)\nRegexpMatchMedium_32    255ns × (0.99,1.04)   252ns × (0.99,1.01)  -1.43% (p=0.001)\nRegexpMatchMedium_1K   73.9µs × (0.98,1.04)  72.7µs × (1.00,1.00)  -1.55% (p=0.004)\nRegexpMatchHard_32     3.92µs × (0.98,1.04)  3.85µs × (1.00,1.01)  -1.80% (p=0.003)\nRegexpMatchHard_1K      120µs × (0.98,1.04)   117µs × (1.00,1.00)  -2.13% (p=0.001)\nRevcomp                 936ms × (0.95,1.08)   903ms × (0.98,1.05)  -3.58% (p=0.002)\nTemplate                130ms × (0.98,1.04)   126ms × (0.99,1.01)  -2.98% (p=0.000)\nTimeParse               638ns × (0.98,1.05)   634ns × (0.99,1.01)    ~    (p=0.198)\nTimeFormat              674ns × (0.99,1.01)   698ns × (0.98,1.03)  +3.69% (p=0.000)\n\nChange-Id: Ia0e9b50b1d75a3c0c7556184cd966305574fe07c\nReviewed-on: https://go-review.googlesource.com/9706\nReviewed-by: Rick Hudson <rlh@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/1635ab7dfef52eb8f6666e5fa38ac5866b561a5b"},{"sha":"351897d9d4f61dba5bd19270463c393a58d1f2ce","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"cmd/internal/gc: emit branches in -g mode\n\nThe -g mode is a debugging mode that prints instructions\nas they are constructed. Gbranch was just missing the print.\n\nChange-Id: I3fb45fd9bd3996ed96df5be903b9fd6bd97148b0\nReviewed-on: https://go-review.googlesource.com/9827\nReviewed-by: Rick Hudson <rlh@golang.org>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/351897d9d4f61dba5bd19270463c393a58d1f2ce"},{"sha":"8f037fa1ab223f48750117219cd4fff8c6575970","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"runtime: fix TestLFStack on 386\n\nThe new(uint64) was moving to the stack, which may not be aligned.\n\nChange-Id: Iad070964202001b52029494d43e299fed980f939\nReviewed-on: https://go-review.googlesource.com/9787\nReviewed-by: Brad Fitzpatrick <bradfitz@golang.org>\nReviewed-by: David Chase <drchase@google.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/8f037fa1ab223f48750117219cd4fff8c6575970"},{"sha":"c70b4b5f7e419214c8c61ba5306b569fbab7dc30","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"cmd/internal/gc: show register dump before crashing on register left allocated\n\nIf you are using -h to get a stack trace at the site of the failure,\nYyerror will never return. Dump the register allocation sites\nbefore calling Yyerror.\n\nChange-Id: I51266c03e06cb5084c2eaa89b367b9ed85ba286a\nReviewed-on: https://go-review.googlesource.com/9788\nReviewed-by: Josh Bleecher Snyder <josharian@gmail.com>\nReviewed-by: Dave Cheney <dave@cheney.net>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/c70b4b5f7e419214c8c61ba5306b569fbab7dc30"},{"sha":"dcf6e20606bb7e3920fef186d87e69742f7986fb","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"cmd/internal/gc: drop unused Reslice field from Node\n\nDead code.\n\nThis field is left over from Go 1.4, when we elided the fake write\nbarrier in this case. Today, it's unused (always false).\nThe upcoming append/slice changes handle this case again,\nbut without needing this field.\n\nChange-Id: Ic6f160b64efdc1bbed02097ee03050f8cd0ab1b8\nReviewed-on: https://go-review.googlesource.com/9789\nReviewed-by: David Chase <drchase@google.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/dcf6e20606bb7e3920fef186d87e69742f7986fb"},{"sha":"fc595b78d216e9470afce5d99c002b4bf5760c2c","author":{"email":"5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org","name":"Russ Cox"},"message":"cmd/internal/gc: mark panicindex calls as not returning\n\nMost of the calls to panicindex are already\nmarked as not returning, but these two were missed\nat some point.\n\nPerformance changes below.\n\nname                   old mean              new mean              delta\nBinaryTree17            5.70s × (0.98,1.04)   5.68s × (0.97,1.04)    ~    (p=0.681)\nFannkuch11              4.32s × (1.00,1.00)   4.41s × (0.98,1.03)  +1.98% (p=0.018)\nFmtFprintfEmpty        92.6ns × (0.91,1.11)  92.7ns × (0.91,1.16)    ~    (p=0.969)\nFmtFprintfString        280ns × (0.97,1.05)   281ns × (0.96,1.08)    ~    (p=0.860)\nFmtFprintfInt           284ns × (0.99,1.02)   288ns × (0.97,1.06)    ~    (p=0.207)\nFmtFprintfIntInt        488ns × (0.98,1.01)   493ns × (0.97,1.04)    ~    (p=0.271)\nFmtFprintfPrefixedInt   418ns × (0.98,1.04)   423ns × (0.97,1.04)    ~    (p=0.311)\nFmtFprintfFloat         597ns × (1.00,1.00)   598ns × (0.99,1.01)    ~    (p=0.789)\nFmtManyArgs            1.87µs × (0.99,1.01)  1.89µs × (0.98,1.05)    ~    (p=0.158)\nGobDecode              14.6ms × (0.99,1.01)  14.8ms × (0.98,1.03)  +1.51% (p=0.015)\nGobEncode              12.3ms × (0.98,1.03)  12.3ms × (0.98,1.01)    ~    (p=0.474)\nGzip                    647ms × (1.00,1.01)   656ms × (0.99,1.05)    ~    (p=0.104)\nGunzip                  142ms × (1.00,1.00)   142ms × (1.00,1.00)    ~    (p=0.110)\nHTTPClientServer       89.6µs × (0.99,1.03)  91.2µs × (0.97,1.04)    ~    (p=0.061)\nJSONEncode             31.7ms × (0.99,1.01)  32.6ms × (0.97,1.08)  +2.87% (p=0.038)\nJSONDecode              111ms × (1.00,1.01)   114ms × (0.97,1.05)  +2.47% (p=0.040)\nMandelbrot200          6.01ms × (1.00,1.00)  6.11ms × (0.98,1.04)    ~    (p=0.073)\nGoParse                6.54ms × (0.99,1.02)  6.66ms × (0.97,1.04)    ~    (p=0.064)\nRegexpMatchEasy0_32     159ns × (0.99,1.02)   159ns × (0.99,1.00)    ~    (p=0.693)\nRegexpMatchEasy0_1K     540ns × (0.99,1.03)   538ns × (1.00,1.01)    ~    (p=0.360)\nRegexpMatchEasy1_32     137ns × (0.99,1.01)   138ns × (1.00,1.00)    ~    (p=0.511)\nRegexpMatchEasy1_1K     867ns × (1.00,1.01)   869ns × (0.99,1.01)    ~    (p=0.193)\nRegexpMatchMedium_32    252ns × (1.00,1.00)   252ns × (0.99,1.01)    ~    (p=0.076)\nRegexpMatchMedium_1K   72.7µs × (1.00,1.00)  72.7µs × (1.00,1.00)    ~    (p=0.963)\nRegexpMatchHard_32     3.84µs × (1.00,1.00)  3.85µs × (1.00,1.00)    ~    (p=0.371)\nRegexpMatchHard_1K      117µs × (1.00,1.01)   118µs × (1.00,1.00)    ~    (p=0.898)\nRevcomp                 909ms × (0.98,1.03)   920ms × (0.97,1.07)    ~    (p=0.368)\nTemplate                128ms × (0.99,1.01)   129ms × (0.98,1.03)  +1.41% (p=0.042)\nTimeParse               619ns × (0.98,1.01)   619ns × (0.99,1.01)    ~    (p=0.730)\nTimeFormat              651ns × (1.00,1.01)   661ns × (0.98,1.04)    ~    (p=0.097)\n\nChange-Id: I0ec5baff41f5d282307137ce0d927e6301e4fa10\nReviewed-on: https://go-review.googlesource.com/9811\nReviewed-by: David Chase <drchase@google.com>","distinct":false,"url":"https://api.github.com/repos/pmezard/go/commits/fc595b78d216e9470afce5d99c002b4bf5760c2c"}]}