1. 07 Oct, 2019 5 commits
    • Cuong Manh Le's avatar
      internal/reflectlite: add missing copyright header · 54001652
      Cuong Manh Le authored
      Change-Id: Id43870de6608ef2e8c0ebef82fd710b2c3061e66
      Reviewed-on: https://go-review.googlesource.com/c/go/+/199599Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      Reviewed-by: default avatarTobias Klauser <tobias.klauser@gmail.com>
      54001652
    • Keith Randall's avatar
      cmd/compile: reuse dead register before reusing register holding constant · 72dc9ab1
      Keith Randall authored
      For commuting ops, check whether the second argument is dead before
      checking if the first argument is rematerializeable. Reusing the register
      holding a dead value is always best.
      
      Fixes #33580
      
      Change-Id: I7372cfc03d514e6774d2d9cc727a3e6bf6ce2657
      Reviewed-on: https://go-review.googlesource.com/c/go/+/199559
      Run-TryBot: Keith Randall <khr@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarDavid Chase <drchase@google.com>
      72dc9ab1
    • Meng Zhuo's avatar
      bytes: add endian base compare test · fc2915fa
      Meng Zhuo authored
      The current bytes test suit didn't come with endian based test
      which causing #34549 can passed the try-bot.
      This test will failed when little endian architecture simply using
      load and compare uint.
      
      Update #34549
      
      Change-Id: I0973c2cd505ce21c2bed1deeb7d526f1e872118d
      Reviewed-on: https://go-review.googlesource.com/c/go/+/198358Reviewed-by: default avatarCherry Zhang <cherryyz@google.com>
      Run-TryBot: Cherry Zhang <cherryyz@google.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      fc2915fa
    • Cuong Manh Le's avatar
      internal/reflectlite: add type mirror with reflect test · 8b391060
      Cuong Manh Le authored
      Add test to check that struct type in reflectlite is mirror of reflect.
      Note that the test does not check the field types, only check for number
      of fields and field name are the same.
      
      Updates #34486
      
      Change-Id: Id5f9b26d35faec97863dd1fe7e5eab37d4913181
      Reviewed-on: https://go-review.googlesource.com/c/go/+/199280
      Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarKeith Randall <khr@golang.org>
      8b391060
    • Michael Munday's avatar
      cmd/compile: reduce amount of code generated for block rewrite rules · c7d81bc0
      Michael Munday authored
      Add a Reset method to blocks that allows us to reduce the amount of
      code we generate for block rewrite rules.
      
      Thanks to Cherry for suggesting a similar fix to this in CL 196557.
      
      Compilebench result:
      
      name                      old time/op       new time/op       delta
      Template                        211ms ± 1%        211ms ± 1%   -0.30%  (p=0.028 n=19+20)
      Unicode                        83.7ms ± 3%       83.0ms ± 2%   -0.79%  (p=0.029 n=18+19)
      GoTypes                         757ms ± 1%        755ms ± 1%   -0.31%  (p=0.034 n=19+19)
      Compiler                        3.51s ± 1%        3.50s ± 1%   -0.20%  (p=0.013 n=18+18)
      SSA                             11.7s ± 1%        11.7s ± 1%   -0.38%  (p=0.000 n=19+19)
      Flate                           131ms ± 1%        130ms ± 1%   -0.32%  (p=0.024 n=18+18)
      GoParser                        162ms ± 1%        162ms ± 1%     ~     (p=0.059 n=20+18)
      Reflect                         471ms ± 0%        470ms ± 0%   -0.24%  (p=0.045 n=20+17)
      Tar                             187ms ± 1%        186ms ± 1%     ~     (p=0.157 n=20+20)
      XML                             255ms ± 1%        255ms ± 1%     ~     (p=0.461 n=19+20)
      LinkCompiler                    754ms ± 2%        755ms ± 2%     ~     (p=0.919 n=17+17)
      ExternalLinkCompiler            2.82s ±16%        2.37s ±10%  -15.94%  (p=0.000 n=20+20)
      LinkWithoutDebugCompiler        439ms ± 4%        442ms ± 6%     ~     (p=0.461 n=18+19)
      StdCmd                          25.8s ± 2%        25.5s ± 1%   -0.95%  (p=0.000 n=20+20)
      
      name                      old user-time/op  new user-time/op  delta
      Template                        240ms ± 8%        238ms ± 7%     ~     (p=0.301 n=20+20)
      Unicode                         107ms ±18%        104ms ±13%     ~     (p=0.149 n=20+20)
      GoTypes                         883ms ± 3%        888ms ± 2%     ~     (p=0.211 n=20+20)
      Compiler                        4.22s ± 1%        4.20s ± 1%     ~     (p=0.077 n=20+18)
      SSA                             14.1s ± 1%        14.1s ± 2%     ~     (p=0.192 n=20+20)
      Flate                           145ms ±10%        148ms ± 5%     ~     (p=0.126 n=20+18)
      GoParser                        186ms ± 7%        186ms ± 7%     ~     (p=0.779 n=20+20)
      Reflect                         538ms ± 3%        541ms ± 3%     ~     (p=0.192 n=20+20)
      Tar                             218ms ± 4%        217ms ± 6%     ~     (p=0.835 n=19+20)
      XML                             298ms ± 5%        298ms ± 5%     ~     (p=0.749 n=19+20)
      LinkCompiler                    818ms ± 5%        825ms ± 8%     ~     (p=0.461 n=20+20)
      ExternalLinkCompiler            1.55s ± 4%        1.53s ± 5%     ~     (p=0.063 n=20+18)
      LinkWithoutDebugCompiler        460ms ±12%        460ms ± 7%     ~     (p=0.925 n=20+20)
      
      name                      old object-bytes  new object-bytes  delta
      Template                        554kB ± 0%        554kB ± 0%     ~     (all equal)
      Unicode                         215kB ± 0%        215kB ± 0%     ~     (all equal)
      GoTypes                        2.01MB ± 0%       2.01MB ± 0%     ~     (all equal)
      Compiler                       7.97MB ± 0%       7.97MB ± 0%   +0.00%  (p=0.000 n=20+20)
      SSA                            26.8MB ± 0%       26.9MB ± 0%   +0.27%  (p=0.000 n=20+20)
      Flate                           340kB ± 0%        340kB ± 0%     ~     (all equal)
      GoParser                        434kB ± 0%        434kB ± 0%     ~     (all equal)
      Reflect                        1.34MB ± 0%       1.34MB ± 0%     ~     (all equal)
      Tar                             480kB ± 0%        480kB ± 0%     ~     (all equal)
      XML                             622kB ± 0%        622kB ± 0%     ~     (all equal)
      
      name                      old export-bytes  new export-bytes  delta
      Template                       20.4kB ± 0%       20.4kB ± 0%     ~     (all equal)
      Unicode                        8.21kB ± 0%       8.21kB ± 0%     ~     (all equal)
      GoTypes                        36.6kB ± 0%       36.6kB ± 0%     ~     (all equal)
      Compiler                        115kB ± 0%        115kB ± 0%   +0.08%  (p=0.000 n=20+20)
      SSA                             141kB ± 0%        141kB ± 0%   +0.07%  (p=0.000 n=20+20)
      Flate                          5.11kB ± 0%       5.11kB ± 0%     ~     (all equal)
      GoParser                       8.93kB ± 0%       8.93kB ± 0%     ~     (all equal)
      Reflect                        11.8kB ± 0%       11.8kB ± 0%     ~     (all equal)
      Tar                            10.9kB ± 0%       10.9kB ± 0%     ~     (all equal)
      XML                            17.4kB ± 0%       17.4kB ± 0%     ~     (all equal)
      
      name                      old text-bytes    new text-bytes    delta
      HelloSize                       742kB ± 0%        742kB ± 0%     ~     (all equal)
      CmdGoSize                      10.7MB ± 0%       10.7MB ± 0%     ~     (all equal)
      
      name                      old data-bytes    new data-bytes    delta
      HelloSize                      10.7kB ± 0%       10.7kB ± 0%     ~     (all equal)
      CmdGoSize                       312kB ± 0%        312kB ± 0%     ~     (all equal)
      
      name                      old bss-bytes     new bss-bytes     delta
      HelloSize                       122kB ± 0%        122kB ± 0%     ~     (all equal)
      CmdGoSize                       146kB ± 0%        146kB ± 0%     ~     (all equal)
      
      name                      old exe-bytes     new exe-bytes     delta
      HelloSize                      1.10MB ± 0%       1.10MB ± 0%     ~     (all equal)
      CmdGoSize                      14.9MB ± 0%       14.9MB ± 0%     ~     (all equal)
      
      Change-Id: Ic89a8e62423b3d9fd9391159e0663acf450803b5
      Reviewed-on: https://go-review.googlesource.com/c/go/+/198419
      Run-TryBot: Michael Munday <mike.munday@ibm.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarCherry Zhang <cherryyz@google.com>
      Reviewed-by: default avatarDaniel Martí <mvdan@mvdan.cc>
      c7d81bc0
  2. 06 Oct, 2019 2 commits
  3. 05 Oct, 2019 7 commits
  4. 04 Oct, 2019 23 commits
  5. 03 Oct, 2019 3 commits