1. 05 May, 2015 11 commits
  2. 04 May, 2015 12 commits
  3. 03 May, 2015 6 commits
  4. 02 May, 2015 5 commits
  5. 01 May, 2015 6 commits
    • Dave Cheney's avatar
      cmd/internal/obj: remove Biobuf unget · 8d16253c
      Dave Cheney authored
      This change applies CL 9365 to the copy of Biobuf in cmd/internal/obj.
      
      In the process I discovered that some of the methods that should have been
      checking the unget buffer before reading were not and it was probably just
      dumb luck that we handn't hit these issues before; Bungetc is only used in
      one place in cmd/internal/gc and only an unlikely code path.
      
      Change-Id: Ifa0c5c08442e9fe951a5078c6e9ec77a8a4dc2ff
      Reviewed-on: https://go-review.googlesource.com/9529Reviewed-by: default avatarDaniel Morsing <daniel.morsing@gmail.com>
      Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
      Reviewed-by: default avatarDave Cheney <dave@cheney.net>
      Run-TryBot: Dave Cheney <dave@cheney.net>
      8d16253c
    • Brad Fitzpatrick's avatar
      net/http: fix scheduling race resulting in flaky test · c723230e
      Brad Fitzpatrick authored
      The test was measuring something, assuming other goroutines had
      already scheduled.
      
      Fixes #10427
      
      Change-Id: I2a4d3906f9d4b5ea44b57d972e303bbe2b0b1cde
      Reviewed-on: https://go-review.googlesource.com/9561Reviewed-by: default avatarDavid Crawshaw <crawshaw@golang.org>
      Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
      c723230e
    • Didier Spezia's avatar
      text/template: detect unmatched else at parsing time · 80cedf3e
      Didier Spezia authored
      An unmatched {{else}} should trigger a parsing error.
      
      The top level parser is able to issue an error in case
      of unmatched {{end}}. It does it a posteriori (i.e. after having
      parsed the action).
      
      Extend this behavior to also check for unmatched {{else}}
      
      Fixes #10611
      
      Change-Id: I1d4f433cc64e11bea5f4d61419ccc707ac01bb1d
      Reviewed-on: https://go-review.googlesource.com/9620Reviewed-by: default avatarRob Pike <r@golang.org>
      80cedf3e
    • Didier Spezia's avatar
      cmd/internal/gc,ld: use new flag argument syntax · 8a072ada
      Didier Spezia authored
      The usage messages for the flags in gc and ld are using the old
      flag argument syntax:
         "arg: description using arg"
      
      Update them to the Go 1.5 flag package's syntax:
         "description using arg"
      
      Fixes #10505
      
      Change-Id: Ifa54ff91e1fd644cfc9a3b41e10176eac3654137
      Reviewed-on: https://go-review.googlesource.com/9505Reviewed-by: default avatarRob Pike <r@golang.org>
      8a072ada
    • Austin Clements's avatar
      runtime: detailed debug output of controller state · dc870d5f
      Austin Clements authored
      This adds a detailed debug dump of the state of the GC controller and
      a GODEBUG flag to enable it.
      
      Change-Id: I562fed7981691a84ddf0f9e6fcd9f089f497ac13
      Reviewed-on: https://go-review.googlesource.com/9640Reviewed-by: default avatarRuss Cox <rsc@golang.org>
      dc870d5f
    • Russ Cox's avatar
      runtime: correct accounting of scan work and bytes marked · 4fffc50c
      Russ Cox authored
      (1) Count pointer-free objects found during scanning roots
      as marked bytes, by not zeroing the mark total after scanning roots.
      
      (2) Don't count the bytes for the roots themselves, by not adding
      them to the mark total in scanblock (the zeroing removed by (1)
      was aimed at that add but hitting more).
      
      Combined, (1) and (2) fix the calculation of the marked heap size.
      This makes the GC trigger much less often in the Go 1 benchmarks,
      which have a global []byte pointing at 256 MB of data.
      That 256 MB allocation was not being included in the heap size
      in the current code, but was included in Go 1.4.
      This is the source of much of the relative slowdown in that directory.
      
      (3) Count the bytes for the roots as scanned work, by not zeroing
      the scan total after scanning roots. There is no strict justification
      for this, and it probably doesn't matter much either way,
      but it was always combined with another buggy zeroing
      (removed in (1)), so guilty by association.
      
      Austin noticed this.
      
      name                                    old mean                new mean        delta
      BenchmarkBinaryTree17              13.1s × (0.97,1.03)      5.9s × (0.97,1.05)  -55.19% (p=0.000)
      BenchmarkFannkuch11                4.35s × (0.99,1.01)     4.37s × (1.00,1.01)  +0.47% (p=0.032)
      BenchmarkFmtFprintfEmpty          84.6ns × (0.95,1.14)    85.7ns × (0.94,1.05)  ~ (p=0.521)
      BenchmarkFmtFprintfString          320ns × (0.95,1.06)     283ns × (0.99,1.02)  -11.48% (p=0.000)
      BenchmarkFmtFprintfInt             311ns × (0.98,1.03)     288ns × (0.99,1.02)  -7.26% (p=0.000)
      BenchmarkFmtFprintfIntInt          554ns × (0.96,1.05)     478ns × (0.99,1.02)  -13.70% (p=0.000)
      BenchmarkFmtFprintfPrefixedInt     434ns × (0.96,1.06)     393ns × (0.98,1.04)  -9.60% (p=0.000)
      BenchmarkFmtFprintfFloat           620ns × (0.99,1.03)     584ns × (0.99,1.01)  -5.73% (p=0.000)
      BenchmarkFmtManyArgs              2.19µs × (0.98,1.03)    1.94µs × (0.99,1.01)  -11.62% (p=0.000)
      BenchmarkGobDecode                21.2ms × (0.97,1.06)    15.2ms × (0.99,1.01)  -28.17% (p=0.000)
      BenchmarkGobEncode                18.1ms × (0.94,1.06)    11.8ms × (0.99,1.01)  -35.00% (p=0.000)
      BenchmarkGzip                      650ms × (0.98,1.01)     649ms × (0.99,1.02)  ~ (p=0.802)
      BenchmarkGunzip                    143ms × (1.00,1.01)     143ms × (1.00,1.01)  ~ (p=0.438)
      BenchmarkHTTPClientServer          110µs × (0.98,1.04)     101µs × (0.98,1.02)  -8.79% (p=0.000)
      BenchmarkJSONEncode               40.3ms × (0.97,1.03)    31.8ms × (0.98,1.03)  -20.92% (p=0.000)
      BenchmarkJSONDecode                119ms × (0.97,1.02)     108ms × (0.99,1.02)  -9.15% (p=0.000)
      BenchmarkMandelbrot200            6.03ms × (1.00,1.01)    6.03ms × (0.99,1.01)  ~ (p=0.750)
      BenchmarkGoParse                  8.58ms × (0.89,1.10)    6.80ms × (1.00,1.00)  -20.71% (p=0.000)
      BenchmarkRegexpMatchEasy0_32       162ns × (1.00,1.01)     162ns × (0.99,1.02)  ~ (p=0.131)
      BenchmarkRegexpMatchEasy0_1K       540ns × (0.99,1.02)     559ns × (0.99,1.02)  +3.58% (p=0.000)
      BenchmarkRegexpMatchEasy1_32       139ns × (0.98,1.04)     139ns × (1.00,1.00)  ~ (p=0.466)
      BenchmarkRegexpMatchEasy1_1K       889ns × (0.99,1.01)     885ns × (0.99,1.01)  -0.50% (p=0.022)
      BenchmarkRegexpMatchMedium_32      252ns × (0.99,1.02)     252ns × (0.99,1.01)  ~ (p=0.469)
      BenchmarkRegexpMatchMedium_1K     72.9µs × (0.99,1.01)    73.6µs × (0.99,1.03)  ~ (p=0.168)
      BenchmarkRegexpMatchHard_32       3.87µs × (1.00,1.01)    3.86µs × (1.00,1.00)  ~ (p=0.055)
      BenchmarkRegexpMatchHard_1K        118µs × (0.99,1.01)     117µs × (0.99,1.00)  ~ (p=0.133)
      BenchmarkRevcomp                   995ms × (0.94,1.10)     949ms × (0.99,1.01)  -4.64% (p=0.000)
      BenchmarkTemplate                  141ms × (0.97,1.02)     127ms × (0.99,1.01)  -10.00% (p=0.000)
      BenchmarkTimeParse                 641ns × (0.99,1.01)     623ns × (0.99,1.01)  -2.79% (p=0.000)
      BenchmarkTimeFormat                729ns × (0.98,1.03)     679ns × (0.99,1.00)  -6.93% (p=0.000)
      
      Change-Id: I839bd7356630d18377989a0748763414e15ed057
      Reviewed-on: https://go-review.googlesource.com/9602Reviewed-by: default avatarAustin Clements <austin@google.com>
      4fffc50c