1. 27 Oct, 2016 1 commit
  2. 26 Oct, 2016 35 commits
  3. 25 Oct, 2016 4 commits
    • Matthew Dempsky's avatar
      cmd/compile: slightly regularize interface method types · d89b70d4
      Matthew Dempsky authored
      Use a single *struct{} type instance rather than reconstructing one
      for every declared/imported interface method. Minor allocations win:
      
      name       old alloc/op    new alloc/op    delta
      Template      41.8MB ± 0%     41.7MB ± 0%  -0.10%         (p=0.000 n=9+10)
      Unicode       34.2MB ± 0%     34.2MB ± 0%    ~           (p=0.971 n=10+10)
      GoTypes        123MB ± 0%      122MB ± 0%  -0.03%         (p=0.000 n=9+10)
      Compiler       495MB ± 0%      495MB ± 0%  -0.01%        (p=0.000 n=10+10)
      
      name       old allocs/op   new allocs/op   delta
      Template        409k ± 0%       408k ± 0%  -0.13%        (p=0.000 n=10+10)
      Unicode         354k ± 0%       354k ± 0%    ~           (p=0.516 n=10+10)
      GoTypes        1.22M ± 0%      1.22M ± 0%  -0.03%        (p=0.009 n=10+10)
      Compiler       4.43M ± 0%      4.43M ± 0%  -0.02%        (p=0.000 n=10+10)
      
      Change-Id: Id3a4ca3dd09112bb96ccc982b06c9e79f661d31f
      Reviewed-on: https://go-review.googlesource.com/32051Reviewed-by: default avatarRobert Griesemer <gri@golang.org>
      d89b70d4
    • Keith Randall's avatar
      Revert "Revert "cmd/compile: inline convI2E"" · c78d072c
      Keith Randall authored
      This reverts commit 7dd9c385.
      
      Reason for revert: Reverting the revert, which will re-enable the convI2E optimization.  We originally reverted the convI2E optimization because it was making the builder fail, but the underlying cause was later determined to be unrelated.
      
      Original CL: https://go-review.googlesource.com/31260
      Revert CL: https://go-review.googlesource.com/31310
      Real bug: https://go-review.googlesource.com/c/25159
      Real fix: https://go-review.googlesource.com/c/31316
      
      Change-Id: I17237bb577a23a7675a5caab970ccda71a4124f2
      Reviewed-on: https://go-review.googlesource.com/32023
      Run-TryBot: Keith Randall <khr@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      Reviewed-by: default avatarMatthew Dempsky <mdempsky@google.com>
      c78d072c
    • Joe Tsai's avatar
      net/http: fix redirect logic to handle mutations of cookies · c60d9a33
      Joe Tsai authored
      In the situation where the Client.Jar is set and the Request.Header
      has cookies manually inserted, the redirect logic needs to be
      able to apply changes to cookies from "Set-Cookie" headers to both
      the Jar and the manually inserted Header cookies.
      
      Since Header cookies lack information about the original domain
      and path, the logic in this CL simply removes cookies from the
      initial Header if any subsequent "Set-Cookie" matches. Thus,
      in the event of cookie conflicts, the logic preserves the behavior
      prior to change made in golang.org/cl/28930.
      
      Fixes #17494
      Updates #4800
      
      Change-Id: I645194d9f97ff4d95bd07ca36de1d6cdf2f32429
      Reviewed-on: https://go-review.googlesource.com/31435Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      c60d9a33
    • Matthew Dempsky's avatar
      cmd/compile: don't wrap numeric or type literals in OPAREN · 70d685dc
      Matthew Dempsky authored
      It's only necessary to wrap named OTYPE or OLITERAL nodes, because
      their line numbers reflect the line number of the declaration, rather
      than use.
      
      Saves a lot of wrapper nodes in composite-literal-heavy packages like
      Unicode.
      
      name       old alloc/op    new alloc/op    delta
      Template      41.8MB ± 0%     41.8MB ± 0%  -0.07%        (p=0.000 n=10+10)
      Unicode       36.6MB ± 0%     34.2MB ± 0%  -6.55%        (p=0.000 n=10+10)
      GoTypes        123MB ± 0%      123MB ± 0%  -0.02%        (p=0.004 n=10+10)
      Compiler       495MB ± 0%      495MB ± 0%  -0.03%        (p=0.000 n=10+10)
      
      name       old allocs/op   new allocs/op   delta
      Template        409k ± 0%       409k ± 0%  -0.05%        (p=0.029 n=10+10)
      Unicode         371k ± 0%       354k ± 0%  -4.48%         (p=0.000 n=10+9)
      GoTypes        1.22M ± 0%      1.22M ± 0%    ~           (p=0.075 n=10+10)
      Compiler       4.44M ± 0%      4.44M ± 0%  -0.02%        (p=0.000 n=10+10)
      
      Change-Id: Id1183170835125c778fb41b7e76d06d5ecd4f7a1
      Reviewed-on: https://go-review.googlesource.com/32021
      Run-TryBot: Matthew Dempsky <mdempsky@google.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarRobert Griesemer <gri@golang.org>
      70d685dc