1. 08 Apr, 2017 4 commits
  2. 07 Apr, 2017 28 commits
  3. 06 Apr, 2017 8 commits
    • Matthew Dempsky's avatar
      cmd/compile/internal/gc: remove a bunch of uses of iterField · 385c13cf
      Matthew Dempsky authored
      Passes toolstash-check -all.
      
      Change-Id: I9fb91dd78dff149b5e1e1329d00855fd41f12523
      Reviewed-on: https://go-review.googlesource.com/39796
      Run-TryBot: Matthew Dempsky <mdempsky@google.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarJosh Bleecher Snyder <josharian@gmail.com>
      385c13cf
    • Matthew Dempsky's avatar
      cmd/compile/internal/gc: simplify export info · a680a85e
      Matthew Dempsky authored
      Followup to previous typenod CL. Changes export data format, but only
      the compiler-specific section, so no version bump.
      
      Change-Id: I0c21737141f3d257366b29b2a9211bc7217c39ee
      Reviewed-on: https://go-review.googlesource.com/39797
      Run-TryBot: Matthew Dempsky <mdempsky@google.com>
      Reviewed-by: default avatarRobert Griesemer <gri@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      a680a85e
    • Matthew Dempsky's avatar
      cmd/compile/internal/gc: remove a bunch of uses of typenod · 2e1b42a8
      Matthew Dempsky authored
      Passes toolstash-check -all.
      
      Change-Id: Ic9eb0c52bedac185ab86cc62207f199d93700344
      Reviewed-on: https://go-review.googlesource.com/39795
      Run-TryBot: Matthew Dempsky <mdempsky@google.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarRobert Griesemer <gri@golang.org>
      2e1b42a8
    • Josh Bleecher Snyder's avatar
      cmd/compile: remove forceObjFileStability · 25fc842f
      Josh Bleecher Snyder authored
      The textual import/export format is ancient history.
      
      Change-Id: Iebe90bfd9bd3074eb191186d86e5f4286ce3b1f3
      Reviewed-on: https://go-review.googlesource.com/39850
      Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
      Reviewed-by: default avatarMatthew Dempsky <mdempsky@google.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      25fc842f
    • Josh Bleecher Snyder's avatar
      cmd/compile: make typenamesym do less work · 91433eb5
      Josh Bleecher Snyder authored
      typenamesym is called from three places:
      typename, ngotype, and Type.Symbol.
      Only in typename do we actually need a Node.
      ngotype and Type.Symbol require only a Sym.
      And writing the newly created Node to
      Sym.Def is unsafe in a concurrent backend.
      Rather than use a mutex protect to Sym.Def,
      make typenamesym not touch Sym.Def.
      
      The assignment to Sym.Def was serving a second purpose,
      namely to prevent duplicate entries on signatlist.
      Preserve that functionality by switching signatlist to a map.
      This in turn requires that we sort signatlist
      when exporting it, to preserve reproducibility.
      
      We'd like to use Type.cmp for sorting,
      but that causes infinite recursion at the moment;
      see #19869.
      
      For now, use Type.LongString as the sort key,
      which is a complete description of the type.
      Type.LongString is relatively expensive,
      but we calculate it only once per type,
      and signatlist is generally fairly small,
      so the performance impact is minimal.
      
      Updates #15756
      
      name       old alloc/op    new alloc/op    delta
      Template      39.4MB ± 0%     39.4MB ± 0%    ~     (p=0.222 n=5+5)
      Unicode       29.8MB ± 0%     29.8MB ± 0%    ~     (p=0.151 n=5+5)
      GoTypes        113MB ± 0%      113MB ± 0%    ~     (p=0.095 n=5+5)
      SSA           1.25GB ± 0%     1.25GB ± 0%  +0.04%  (p=0.008 n=5+5)
      Flate         25.3MB ± 0%     25.4MB ± 0%    ~     (p=0.056 n=5+5)
      GoParser      31.8MB ± 0%     31.8MB ± 0%    ~     (p=0.310 n=5+5)
      Reflect       78.3MB ± 0%     78.3MB ± 0%    ~     (p=0.690 n=5+5)
      Tar           26.7MB ± 0%     26.7MB ± 0%    ~     (p=0.548 n=5+5)
      XML           42.2MB ± 0%     42.2MB ± 0%    ~     (p=0.222 n=5+5)
      
      name       old allocs/op   new allocs/op   delta
      Template        387k ± 0%       388k ± 0%    ~     (p=0.056 n=5+5)
      Unicode         320k ± 0%       321k ± 0%  +0.32%  (p=0.032 n=5+5)
      GoTypes        1.14M ± 0%      1.15M ± 0%    ~     (p=0.095 n=5+5)
      SSA            9.70M ± 0%      9.72M ± 0%  +0.18%  (p=0.008 n=5+5)
      Flate           234k ± 0%       235k ± 0%  +0.60%  (p=0.008 n=5+5)
      GoParser        317k ± 0%       317k ± 0%    ~     (p=1.000 n=5+5)
      Reflect         982k ± 0%       983k ± 0%    ~     (p=0.841 n=5+5)
      Tar             252k ± 1%       252k ± 0%    ~     (p=0.310 n=5+5)
      XML             393k ± 0%       392k ± 0%    ~     (p=0.548 n=5+5)
      
      Change-Id: I53a3b95d19cf1a7b7511a94fba896706addf84fb
      Reviewed-on: https://go-review.googlesource.com/39710
      Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarMatthew Dempsky <mdempsky@google.com>
      91433eb5
    • Kale Blankenship's avatar
      net/http: add tests for http2 Server WriteTimeout enforcement per stream · b599c1fe
      Kale Blankenship authored
      Updates #18437
      
      Change-Id: Iaa8a35d18eca8be24763dd151ad9e324ecbf7f7b
      Reviewed-on: https://go-review.googlesource.com/34726
      Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      b599c1fe
    • Josh Bleecher Snyder's avatar
      cmd/internal/obj: unify creation of numeric literal syms · 99683483
      Josh Bleecher Snyder authored
      This is a straightforward refactoring,
      to reduce the scope of upcoming changes.
      
      The symbol size and AttrLocal=true was not
      set universally, but it appears not to matter,
      since toolstash -cmp is happy.
      
      Passes toolstash-check -all.
      
      Change-Id: I7f8392f939592d3a1bc6f61dec992f5661f42fca
      Reviewed-on: https://go-review.googlesource.com/39791
      Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      99683483
    • Josh Bleecher Snyder's avatar
      cmd/internal/obj: remove Linklookup · c3114882
      Josh Bleecher Snyder authored
      It was simply a wrapper around Link.Lookup.
      Unwrap everything.
      
      CL prepared using eg with template:
      
      package p
      
      import "cmd/internal/obj"
      
      func before(ctxt *obj.Link, name string, version int) *obj.LSym {
      	return obj.Linklookup(ctxt, name, version)
      }
      
      func after(ctxt *obj.Link, name string, version int) *obj.LSym {
      	return ctxt.Lookup(name, version)
      }
      
      Then one comment in cmd/asm/internal/asm/parse.go
      was manually updated (and gofmt'ed!),
      and func Linklookup deleted.
      
      Passes toolstash-check (as a sanity measure).
      
      Change-Id: Icc4d56b0b2b5c8888d3184c1898c48359ea1e638
      Reviewed-on: https://go-review.googlesource.com/39715
      Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      c3114882