1. 28 Nov, 2018 13 commits
    • James Craig Burley's avatar
      doc: fix typo in FAQ · 96d41786
      James Craig Burley authored
      Change-Id: I956d6d1dbf8516cb65eb3a0686a3b0584b4a6840
      GitHub-Last-Rev: 1c928f3c67eceae424cbcd6b0935605a78728604
      GitHub-Pull-Request: golang/go#28991
      Reviewed-on: https://go-review.googlesource.com/c/151324Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      96d41786
    • Tobias Klauser's avatar
      plugin: fix build constraint to disable test on linux/arm64 · 2d4bd3db
      Tobias Klauser authored
      CL 151478 was suppose to fix the build failure on linux/arm64 but the
      build constraint didn't exclude linux/arm64 properly.
      
      Fixes #28982
      
      Change-Id: Ia80265b0adba0384cd28bc2deb1726418664975a
      Reviewed-on: https://go-review.googlesource.com/c/151303
      Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarAndrew Bonventre <andybons@golang.org>
      2d4bd3db
    • Josh Bleecher Snyder's avatar
      math/big: allocate less for single-Word nats · bfc54bb6
      Josh Bleecher Snyder authored
      For many uses of math/big, most numbers are small in practice.
      Prior to this change, big.NewInt allocated a minimum of five Words:
      one to hold the value, and four as extra capacity.
      In most cases, this extra capacity is waste.
      Worse, allocating a single Word uses a fast malloc path for tiny allocs;
      allocating five Words is more expensive in CPU as well as memory.
      
      This change is a simple fix: Treat a request for one Word at its word.
      I experimented with more complicated fixes and did not find anything
      that outperformed this easy fix.
      
      On some real world programs, this is a clear win.
      
      The compiler:
      
      name        old alloc/op      new alloc/op      delta
      Template         37.1MB ± 0%       37.0MB ± 0%  -0.23%  (p=0.008 n=5+5)
      Unicode          29.2MB ± 0%       28.5MB ± 0%  -2.48%  (p=0.008 n=5+5)
      GoTypes           133MB ± 0%        133MB ± 0%  -0.05%  (p=0.008 n=5+5)
      Compiler          628MB ± 0%        628MB ± 0%  -0.06%  (p=0.008 n=5+5)
      SSA              2.04GB ± 0%       2.03GB ± 0%  -0.14%  (p=0.008 n=5+5)
      Flate            24.7MB ± 0%       24.6MB ± 0%  -0.23%  (p=0.008 n=5+5)
      GoParser         29.6MB ± 0%       29.6MB ± 0%  -0.07%  (p=0.008 n=5+5)
      Reflect          82.3MB ± 0%       82.2MB ± 0%  -0.05%  (p=0.008 n=5+5)
      Tar              36.2MB ± 0%       36.2MB ± 0%  -0.12%  (p=0.008 n=5+5)
      XML              49.5MB ± 0%       49.4MB ± 0%  -0.23%  (p=0.008 n=5+5)
      [Geo mean]       85.1MB            84.8MB       -0.37%
      
      name        old allocs/op     new allocs/op     delta
      Template           364k ± 0%         364k ± 0%    ~     (p=0.476 n=5+5)
      Unicode            341k ± 0%         341k ± 0%    ~     (p=0.690 n=5+5)
      GoTypes           1.37M ± 0%        1.37M ± 0%    ~     (p=0.444 n=5+5)
      Compiler          5.50M ± 0%        5.50M ± 0%  +0.02%  (p=0.008 n=5+5)
      SSA               16.0M ± 0%        16.0M ± 0%  +0.01%  (p=0.008 n=5+5)
      Flate              238k ± 0%         238k ± 0%    ~     (p=0.222 n=5+5)
      GoParser           305k ± 0%         305k ± 0%    ~     (p=0.841 n=5+5)
      Reflect            976k ± 0%         976k ± 0%    ~     (p=0.222 n=5+5)
      Tar                354k ± 0%         354k ± 0%    ~     (p=0.103 n=5+5)
      XML                450k ± 0%         450k ± 0%    ~     (p=0.151 n=5+5)
      [Geo mean]         837k              837k       +0.01%
      
      go.skylark.net (at ea6d2813de75ded8d157b9540bc3d3ad0b688623):
      
      name                     old alloc/op   new alloc/op   delta
      Hashtable-8                 456kB ± 0%     299kB ± 0%  -34.33%  (p=0.000 n=9+9)
      /bench_builtin_method-8     220kB ± 0%     190kB ± 0%  -13.55%  (p=0.000 n=9+10)
      
      name                     old allocs/op  new allocs/op  delta
      Hashtable-8                 7.84k ± 0%     7.84k ± 0%     ~     (all equal)
      /bench_builtin_method-8     7.49k ± 0%     7.49k ± 0%     ~     (all equal)
      
      The math/big benchmarks are messy, which is predictable, since they
      naturally exercise the bigger-than-one-word code more.
      Also worth noting is that many of the benchmarks have very high variance.
      I've omitted the opVV and opVW benchmarks, as they are unrelated.
      
      name                              old time/op    new time/op    delta
      DecimalConversion-8                 92.5µs ± 1%    90.6µs ± 0%   -2.12%  (p=0.000 n=17+19)
      FloatString/100-8                    867ns ± 0%     871ns ± 0%   +0.50%  (p=0.000 n=18+18)
      FloatString/1000-8                  26.4µs ± 1%    26.5µs ± 1%     ~     (p=0.396 n=20+19)
      FloatString/10000-8                 2.15ms ± 2%    2.16ms ± 2%     ~     (p=0.089 n=19+20)
      FloatString/100000-8                 209ms ± 1%     209ms ± 1%     ~     (p=0.583 n=19+19)
      FloatAdd/10-8                       63.5ns ± 2%    64.1ns ± 6%     ~     (p=0.389 n=19+19)
      FloatAdd/100-8                      66.0ns ± 2%    65.8ns ± 2%     ~     (p=0.825 n=20+20)
      FloatAdd/1000-8                     93.9ns ± 1%    94.3ns ± 1%     ~     (p=0.273 n=19+20)
      FloatAdd/10000-8                     347ns ± 2%     342ns ± 1%   -1.50%  (p=0.000 n=18+18)
      FloatAdd/100000-8                   2.78µs ± 1%    2.78µs ± 2%     ~     (p=0.961 n=20+19)
      FloatSub/10-8                       56.9ns ± 2%    57.8ns ± 3%   +1.59%  (p=0.001 n=19+19)
      FloatSub/100-8                      58.2ns ± 2%    58.9ns ± 2%   +1.25%  (p=0.004 n=20+20)
      FloatSub/1000-8                     74.9ns ± 1%    74.4ns ± 1%   -0.76%  (p=0.000 n=19+20)
      FloatSub/10000-8                     223ns ± 1%     220ns ± 2%   -1.29%  (p=0.000 n=16+20)
      FloatSub/100000-8                   1.66µs ± 1%    1.66µs ± 2%     ~     (p=0.147 n=20+20)
      ParseFloatSmallExp-8                8.38µs ± 0%    8.59µs ± 0%   +2.48%  (p=0.000 n=19+19)
      ParseFloatLargeExp-8                31.1µs ± 0%    32.0µs ± 0%   +3.04%  (p=0.000 n=16+17)
      GCD10x10/WithoutXY-8                 115ns ± 1%      99ns ± 3%  -14.07%  (p=0.000 n=20+20)
      GCD10x10/WithXY-8                    322ns ± 0%     312ns ± 0%   -3.11%  (p=0.000 n=18+13)
      GCD10x100/WithoutXY-8                233ns ± 1%     219ns ± 1%   -5.73%  (p=0.000 n=19+17)
      GCD10x100/WithXY-8                   709ns ± 0%     759ns ± 0%   +7.04%  (p=0.000 n=19+19)
      GCD10x1000/WithoutXY-8               653ns ± 1%     642ns ± 1%   -1.69%  (p=0.000 n=17+20)
      GCD10x1000/WithXY-8                 1.35µs ± 0%    1.35µs ± 1%     ~     (p=0.255 n=20+16)
      GCD10x10000/WithoutXY-8             4.57µs ± 1%    4.61µs ± 1%   +0.95%  (p=0.000 n=18+17)
      GCD10x10000/WithXY-8                6.82µs ± 0%    6.84µs ± 0%   +0.27%  (p=0.000 n=16+17)
      GCD10x100000/WithoutXY-8            43.9µs ± 1%    44.0µs ± 1%   +0.28%  (p=0.000 n=18+17)
      GCD10x100000/WithXY-8               60.6µs ± 0%    60.6µs ± 0%     ~     (p=0.907 n=18+18)
      GCD100x100/WithoutXY-8              1.13µs ± 0%    1.21µs ± 0%   +6.39%  (p=0.000 n=19+19)
      GCD100x100/WithXY-8                 1.82µs ± 0%    1.92µs ± 0%   +5.24%  (p=0.000 n=19+17)
      GCD100x1000/WithoutXY-8             2.00µs ± 0%    2.03µs ± 1%   +1.61%  (p=0.000 n=18+16)
      GCD100x1000/WithXY-8                3.22µs ± 0%    3.20µs ± 1%   -0.83%  (p=0.000 n=19+19)
      GCD100x10000/WithoutXY-8            9.28µs ± 1%    9.17µs ± 1%   -1.25%  (p=0.000 n=18+19)
      GCD100x10000/WithXY-8               13.5µs ± 0%    13.3µs ± 0%   -1.12%  (p=0.000 n=18+19)
      GCD100x100000/WithoutXY-8           80.4µs ± 0%    78.6µs ± 0%   -2.25%  (p=0.000 n=19+19)
      GCD100x100000/WithXY-8               114µs ± 0%     112µs ± 0%   -1.46%  (p=0.000 n=19+17)
      GCD1000x1000/WithoutXY-8            12.9µs ± 1%    12.9µs ± 2%   -0.50%  (p=0.014 n=20+19)
      GCD1000x1000/WithXY-8               19.6µs ± 1%    19.6µs ± 2%   -0.28%  (p=0.040 n=17+18)
      GCD1000x10000/WithoutXY-8           22.4µs ± 0%    22.4µs ± 2%     ~     (p=0.220 n=19+19)
      GCD1000x10000/WithXY-8              57.0µs ± 0%    56.5µs ± 0%   -0.87%  (p=0.000 n=20+20)
      GCD1000x100000/WithoutXY-8           116µs ± 0%     115µs ± 0%   -0.49%  (p=0.000 n=18+19)
      GCD1000x100000/WithXY-8              410µs ± 0%     411µs ± 0%     ~     (p=0.052 n=19+19)
      GCD10000x10000/WithoutXY-8           247µs ± 1%     244µs ± 1%   -0.92%  (p=0.000 n=19+19)
      GCD10000x10000/WithXY-8              476µs ± 1%     473µs ± 1%   -0.48%  (p=0.009 n=19+19)
      GCD10000x100000/WithoutXY-8          573µs ± 1%     571µs ± 1%   -0.45%  (p=0.012 n=20+20)
      GCD10000x100000/WithXY-8            3.35ms ± 1%    3.35ms ± 1%     ~     (p=0.444 n=20+19)
      GCD100000x100000/WithoutXY-8        12.0ms ± 2%    11.9ms ± 2%     ~     (p=0.276 n=18+20)
      GCD100000x100000/WithXY-8           27.3ms ± 1%    27.3ms ± 1%     ~     (p=0.792 n=20+19)
      Hilbert-8                            672µs ± 0%     611µs ± 0%   -9.02%  (p=0.000 n=19+19)
      Binomial-8                          1.40µs ± 0%    1.18µs ± 0%  -15.69%  (p=0.000 n=16+14)
      QuoRem-8                            2.20µs ± 1%    2.17µs ± 1%   -1.13%  (p=0.000 n=19+19)
      Exp-8                               4.10ms ± 1%    4.11ms ± 1%     ~     (p=0.296 n=20+19)
      Exp2-8                              4.11ms ± 1%    4.12ms ± 1%     ~     (p=0.429 n=20+20)
      Bitset-8                            8.67ns ± 6%    8.74ns ± 4%     ~     (p=0.139 n=19+17)
      BitsetNeg-8                         43.6ns ± 1%    43.8ns ± 2%   +0.61%  (p=0.036 n=20+20)
      BitsetOrig-8                        77.5ns ± 1%    68.4ns ± 1%  -11.77%  (p=0.000 n=19+20)
      BitsetNegOrig-8                      145ns ± 1%     141ns ± 1%   -2.87%  (p=0.000 n=19+20)
      ModSqrt225_Tonelli-8                 324µs ± 1%     324µs ± 1%     ~     (p=0.409 n=18+20)
      ModSqrt225_3Mod4-8                  98.9µs ± 1%    99.1µs ± 1%     ~     (p=0.298 n=19+18)
      ModSqrt231_Tonelli-8                 337µs ± 1%     337µs ± 1%     ~     (p=0.718 n=20+18)
      ModSqrt231_5Mod8-8                   115µs ± 1%     114µs ± 1%   -0.22%  (p=0.050 n=20+20)
      ModInverse-8                         895ns ± 0%     869ns ± 1%   -2.83%  (p=0.000 n=17+17)
      Sqrt-8                              28.1µs ± 1%    28.1µs ± 0%   -0.28%  (p=0.000 n=16+20)
      IntSqr/1-8                          10.8ns ± 3%    10.5ns ± 3%   -2.51%  (p=0.000 n=19+17)
      IntSqr/2-8                          30.5ns ± 2%    30.3ns ± 4%   -0.71%  (p=0.035 n=18+18)
      IntSqr/3-8                          40.1ns ± 1%    40.1ns ± 1%     ~     (p=0.710 n=20+17)
      IntSqr/5-8                          65.3ns ± 1%    65.4ns ± 2%     ~     (p=0.744 n=19+19)
      IntSqr/8-8                           101ns ± 1%     102ns ± 0%     ~     (p=0.234 n=19+20)
      IntSqr/10-8                          138ns ± 0%     138ns ± 2%     ~     (p=0.827 n=18+18)
      IntSqr/20-8                          378ns ± 1%     378ns ± 1%     ~     (p=0.479 n=18+18)
      IntSqr/30-8                          637ns ± 0%     638ns ± 1%     ~     (p=0.051 n=18+20)
      IntSqr/50-8                         1.34µs ± 2%    1.34µs ± 1%     ~     (p=0.970 n=18+19)
      IntSqr/80-8                         2.78µs ± 0%    2.78µs ± 1%   -0.18%  (p=0.006 n=19+17)
      IntSqr/100-8                        3.98µs ± 0%    3.98µs ± 0%     ~     (p=0.057 n=17+19)
      IntSqr/200-8                        13.5µs ± 0%    13.5µs ± 1%   -0.33%  (p=0.000 n=19+17)
      IntSqr/300-8                        25.3µs ± 1%    25.3µs ± 1%     ~     (p=0.361 n=19+20)
      IntSqr/500-8                        62.9µs ± 0%    62.9µs ± 1%     ~     (p=0.899 n=17+17)
      IntSqr/800-8                         128µs ± 1%     127µs ± 1%   -0.32%  (p=0.016 n=18+20)
      IntSqr/1000-8                        192µs ± 0%     192µs ± 1%     ~     (p=0.916 n=17+18)
      Div/20/10-8                         34.9ns ± 2%    35.6ns ± 1%   +2.01%  (p=0.000 n=20+20)
      Div/200/100-8                        218ns ± 1%     215ns ± 2%   -1.43%  (p=0.000 n=18+18)
      Div/2000/1000-8                     1.16µs ± 1%    1.15µs ± 1%   -1.04%  (p=0.000 n=19+20)
      Div/20000/10000-8                   35.7µs ± 1%    35.4µs ± 1%   -0.69%  (p=0.000 n=19+18)
      Div/200000/100000-8                 2.89ms ± 1%    2.88ms ± 1%   -0.62%  (p=0.007 n=19+20)
      Mul-8                               9.28ms ± 1%    9.27ms ± 1%     ~     (p=0.563 n=18+18)
      ZeroShifts/Shl-8                     712ns ± 6%     716ns ± 7%     ~     (p=0.597 n=20+20)
      ZeroShifts/ShlSame-8                4.00ns ± 1%    4.06ns ± 5%     ~     (p=0.162 n=18+20)
      ZeroShifts/Shr-8                     714ns ±10%   1285ns ±156%     ~     (p=0.250 n=20+20)
      ZeroShifts/ShrSame-8                4.00ns ± 1%    4.09ns ±10%   +2.34%  (p=0.048 n=16+19)
      Exp3Power/0x10-8                     154ns ± 0%     159ns ±13%     ~     (p=0.197 n=14+20)
      Exp3Power/0x40-8                     171ns ± 1%     175ns ± 8%     ~     (p=0.058 n=16+19)
      Exp3Power/0x100-8                    287ns ± 0%     316ns ± 4%  +10.03%  (p=0.000 n=17+19)
      Exp3Power/0x400-8                    698ns ± 1%     801ns ± 6%  +14.75%  (p=0.000 n=19+20)
      Exp3Power/0x1000-8                  2.87µs ± 0%    3.65µs ± 6%  +27.24%  (p=0.000 n=18+18)
      Exp3Power/0x4000-8                  21.9µs ± 1%    28.7µs ± 8%  +31.09%  (p=0.000 n=18+20)
      Exp3Power/0x10000-8                  204µs ± 0%     267µs ± 9%  +30.81%  (p=0.000 n=20+20)
      Exp3Power/0x40000-8                 1.86ms ± 0%    2.26ms ± 5%  +21.68%  (p=0.000 n=18+19)
      Exp3Power/0x100000-8                17.5ms ± 1%    20.7ms ± 7%  +18.39%  (p=0.000 n=19+20)
      Exp3Power/0x400000-8                 156ms ± 0%     172ms ± 6%  +10.54%  (p=0.000 n=19+20)
      Fibo-8                              26.9ms ± 1%    27.5ms ± 3%   +2.32%  (p=0.000 n=19+19)
      NatSqr/1-8                          31.0ns ± 4%    39.5ns ±29%  +27.25%  (p=0.000 n=20+19)
      NatSqr/2-8                          54.1ns ± 1%    69.0ns ±28%  +27.52%  (p=0.000 n=20+20)
      NatSqr/3-8                          66.6ns ± 1%    83.0ns ±25%  +24.59%  (p=0.000 n=20+20)
      NatSqr/5-8                          97.1ns ± 1%   119.9ns ±12%  +23.50%  (p=0.000 n=16+20)
      NatSqr/8-8                           138ns ± 1%     171ns ± 9%  +24.20%  (p=0.000 n=19+20)
      NatSqr/10-8                          182ns ± 0%     225ns ± 9%  +23.50%  (p=0.000 n=16+20)
      NatSqr/20-8                          447ns ± 1%     624ns ± 6%  +39.64%  (p=0.000 n=19+19)
      NatSqr/30-8                          736ns ± 2%     986ns ± 9%  +33.94%  (p=0.000 n=19+20)
      NatSqr/50-8                         1.51µs ± 2%    1.97µs ± 9%  +30.42%  (p=0.000 n=20+20)
      NatSqr/80-8                         3.03µs ± 1%    3.67µs ± 7%  +21.08%  (p=0.000 n=20+20)
      NatSqr/100-8                        4.31µs ± 1%    5.20µs ± 7%  +20.52%  (p=0.000 n=19+20)
      NatSqr/200-8                        14.2µs ± 0%    16.3µs ± 4%  +14.92%  (p=0.000 n=19+20)
      NatSqr/300-8                        27.8µs ± 1%    33.2µs ± 7%  +19.28%  (p=0.000 n=20+18)
      NatSqr/500-8                        66.6µs ± 1%    74.5µs ± 3%  +11.87%  (p=0.000 n=18+18)
      NatSqr/800-8                         135µs ± 1%     165µs ± 7%  +22.33%  (p=0.000 n=20+20)
      NatSqr/1000-8                        200µs ± 0%     228µs ± 3%  +14.39%  (p=0.000 n=19+20)
      NatSetBytes/8-8                     8.87ns ± 4%    8.77ns ± 2%   -1.17%  (p=0.020 n=20+16)
      NatSetBytes/24-8                    38.6ns ± 3%    49.5ns ±29%  +28.32%  (p=0.000 n=18+19)
      NatSetBytes/128-8                   75.2ns ± 1%   120.7ns ±29%  +60.60%  (p=0.000 n=17+20)
      NatSetBytes/7-8                     16.2ns ± 2%    16.5ns ± 2%   +1.76%  (p=0.000 n=20+20)
      NatSetBytes/23-8                    46.5ns ± 1%    60.2ns ±24%  +29.59%  (p=0.000 n=20+20)
      NatSetBytes/127-8                   83.1ns ± 1%   118.2ns ±20%  +42.33%  (p=0.000 n=18+20)
      ScanPi-8                            89.1µs ± 1%   117.4µs ±12%  +31.75%  (p=0.000 n=18+20)
      StringPiParallel-8                  35.1µs ± 9%    40.2µs ±12%  +14.53%  (p=0.000 n=20+20)
      Scan/10/Base2-8                      410ns ±14%     429ns ±10%   +4.47%  (p=0.018 n=19+20)
      Scan/100/Base2-8                    3.05µs ±20%    2.97µs ±14%     ~     (p=0.449 n=20+20)
      Scan/1000/Base2-8                   29.3µs ± 8%    30.1µs ±23%     ~     (p=0.355 n=20+20)
      Scan/10000/Base2-8                   402µs ±13%     395µs ±14%     ~     (p=0.355 n=20+20)
      Scan/100000/Base2-8                 11.8ms ±10%    11.6ms ± 1%     ~     (p=0.245 n=17+18)
      Scan/10/Base8-8                      194ns ± 6%     196ns ±12%     ~     (p=0.829 n=20+19)
      Scan/100/Base8-8                    1.11µs ±15%    1.11µs ±12%     ~     (p=0.743 n=20+20)
      Scan/1000/Base8-8                   11.7µs ±10%    11.7µs ±12%     ~     (p=0.904 n=20+20)
      Scan/10000/Base8-8                   209µs ± 7%     210µs ± 8%     ~     (p=0.478 n=20+20)
      Scan/100000/Base8-8                 10.6ms ± 7%    10.4ms ± 6%     ~     (p=0.112 n=20+18)
      Scan/10/Base10-8                     182ns ±12%     188ns ±11%   +3.52%  (p=0.044 n=20+20)
      Scan/100/Base10-8                   1.01µs ± 8%    1.00µs ±13%     ~     (p=0.588 n=20+20)
      Scan/1000/Base10-8                  10.7µs ±20%    10.6µs ±14%     ~     (p=0.560 n=20+20)
      Scan/10000/Base10-8                  195µs ±10%     194µs ± 9%     ~     (p=0.883 n=20+20)
      Scan/100000/Base10-8                10.6ms ± 2%    10.6ms ± 2%     ~     (p=0.495 n=20+20)
      Scan/10/Base16-8                     166ns ±10%     174ns ±17%     ~     (p=0.072 n=20+20)
      Scan/100/Base16-8                    836ns ±10%     826ns ±12%     ~     (p=0.562 n=20+17)
      Scan/1000/Base16-8                  8.96µs ±13%    8.65µs ± 9%     ~     (p=0.203 n=20+18)
      Scan/10000/Base16-8                  198µs ± 3%     198µs ± 5%     ~     (p=0.718 n=20+20)
      Scan/100000/Base16-8                11.1ms ± 3%    11.0ms ± 4%     ~     (p=0.512 n=20+20)
      String/10/Base2-8                   88.1ns ± 7%    94.1ns ±11%   +6.80%  (p=0.000 n=19+20)
      String/100/Base2-8                   577ns ± 4%     598ns ± 5%   +3.72%  (p=0.000 n=20+20)
      String/1000/Base2-8                 5.25µs ± 2%    5.62µs ± 5%   +7.04%  (p=0.000 n=19+20)
      String/10000/Base2-8                55.6µs ± 1%    60.1µs ± 2%   +8.12%  (p=0.000 n=19+19)
      String/100000/Base2-8                519µs ± 2%     560µs ± 2%   +7.91%  (p=0.000 n=18+17)
      String/10/Base8-8                   52.2ns ± 8%    53.3ns ±12%     ~     (p=0.188 n=20+18)
      String/100/Base8-8                   218ns ± 3%     232ns ±10%   +6.66%  (p=0.000 n=20+20)
      String/1000/Base8-8                 1.84µs ± 3%    1.94µs ± 4%   +5.07%  (p=0.000 n=20+18)
      String/10000/Base8-8                18.1µs ± 2%    19.1µs ± 3%   +5.84%  (p=0.000 n=20+19)
      String/100000/Base8-8                184µs ± 2%     197µs ± 1%   +7.15%  (p=0.000 n=19+19)
      String/10/Base10-8                   158ns ± 7%     146ns ± 6%   -7.65%  (p=0.000 n=20+19)
      String/100/Base10-8                  807ns ± 2%     845ns ± 4%   +4.79%  (p=0.000 n=20+19)
      String/1000/Base10-8                3.99µs ± 3%    3.99µs ± 7%     ~     (p=0.920 n=20+20)
      String/10000/Base10-8               20.8µs ± 6%    22.1µs ±10%   +6.11%  (p=0.000 n=19+20)
      String/100000/Base10-8              5.60ms ± 2%    5.59ms ± 2%     ~     (p=0.749 n=20+19)
      String/10/Base16-8                  49.0ns ±13%    49.3ns ±16%     ~     (p=0.581 n=19+20)
      String/100/Base16-8                  173ns ± 5%     185ns ± 6%   +6.63%  (p=0.000 n=20+18)
      String/1000/Base16-8                1.38µs ± 3%    1.49µs ±10%   +8.27%  (p=0.000 n=19+20)
      String/10000/Base16-8               13.5µs ± 2%    14.5µs ± 3%   +7.08%  (p=0.000 n=20+20)
      String/100000/Base16-8               138µs ± 4%     148µs ± 4%   +7.57%  (p=0.000 n=19+20)
      LeafSize/0-8                        2.74ms ± 1%    2.79ms ± 2%   +2.00%  (p=0.000 n=19+19)
      LeafSize/1-8                        24.8µs ± 4%    26.1µs ± 8%   +5.33%  (p=0.000 n=18+19)
      LeafSize/2-8                        24.9µs ± 7%    25.0µs ± 8%     ~     (p=0.989 n=20+19)
      LeafSize/3-8                        97.6µs ± 3%   100.2µs ± 5%   +2.66%  (p=0.001 n=20+19)
      LeafSize/4-8                        25.2µs ± 5%    25.4µs ± 5%     ~     (p=0.173 n=19+20)
      LeafSize/5-8                         118µs ± 2%     119µs ± 5%     ~     (p=0.478 n=20+20)
      LeafSize/6-8                        97.6µs ± 3%   100.1µs ± 8%   +2.65%  (p=0.021 n=20+19)
      LeafSize/7-8                        65.6µs ± 5%    67.5µs ± 6%   +2.92%  (p=0.003 n=20+19)
      LeafSize/8-8                        25.5µs ± 5%    25.6µs ± 6%     ~     (p=0.461 n=19+20)
      LeafSize/9-8                         134µs ± 4%     136µs ± 5%     ~     (p=0.194 n=19+20)
      LeafSize/10-8                        119µs ± 3%     122µs ± 3%   +2.52%  (p=0.000 n=20+19)
      LeafSize/11-8                        115µs ± 5%     116µs ± 5%     ~     (p=0.158 n=20+19)
      LeafSize/12-8                       97.4µs ± 4%   100.3µs ± 5%   +2.91%  (p=0.003 n=19+20)
      LeafSize/13-8                       93.1µs ± 4%    93.0µs ± 6%     ~     (p=0.698 n=20+20)
      LeafSize/14-8                       67.0µs ± 3%    69.7µs ± 6%   +4.10%  (p=0.000 n=20+20)
      LeafSize/15-8                       48.3µs ± 2%    49.3µs ± 6%   +1.91%  (p=0.014 n=19+20)
      LeafSize/16-8                       25.6µs ± 5%    25.6µs ± 6%     ~     (p=0.947 n=20+20)
      LeafSize/32-8                       30.1µs ± 4%    30.3µs ± 5%     ~     (p=0.685 n=18+19)
      LeafSize/64-8                       53.4µs ± 2%    54.0µs ± 3%     ~     (p=0.053 n=19+19)
      ProbablyPrime/n=0-8                 3.59ms ± 1%    3.55ms ± 1%   -1.12%  (p=0.000 n=20+18)
      ProbablyPrime/n=1-8                 4.21ms ± 2%    4.17ms ± 2%   -0.73%  (p=0.018 n=20+19)
      ProbablyPrime/n=5-8                 6.74ms ± 1%    6.72ms ± 1%     ~     (p=0.102 n=20+20)
      ProbablyPrime/n=10-8                9.91ms ± 1%    9.89ms ± 2%     ~     (p=0.322 n=19+20)
      ProbablyPrime/n=20-8                16.2ms ± 1%    16.1ms ± 2%   -0.52%  (p=0.006 n=19+19)
      ProbablyPrime/Lucas-8               2.94ms ± 1%    2.95ms ± 1%   +0.52%  (p=0.002 n=18+19)
      ProbablyPrime/MillerRabinBase2-8     641µs ± 2%     640µs ± 2%     ~     (p=0.607 n=19+20)
      FloatSqrt/64-8                       653ns ± 5%     704ns ± 5%   +7.82%  (p=0.000 n=19+20)
      FloatSqrt/128-8                     1.32µs ± 3%    1.42µs ± 5%   +7.29%  (p=0.000 n=18+20)
      FloatSqrt/256-8                     1.44µs ± 2%    1.45µs ± 4%     ~     (p=0.089 n=19+19)
      FloatSqrt/1000-8                    3.36µs ± 3%    3.42µs ± 5%   +1.82%  (p=0.012 n=20+20)
      FloatSqrt/10000-8                   25.5µs ± 2%    27.5µs ± 7%   +7.91%  (p=0.000 n=18+19)
      FloatSqrt/100000-8                   629µs ± 6%     663µs ± 9%   +5.32%  (p=0.000 n=18+20)
      FloatSqrt/1000000-8                 46.4ms ± 2%    46.6ms ± 5%     ~     (p=0.351 n=20+19)
      [Geo mean]                          9.60µs        10.01µs        +4.28%
      
      name                              old alloc/op   new alloc/op   delta
      DecimalConversion-8                 54.0kB ± 0%    43.6kB ± 0%  -19.40%  (p=0.000 n=20+20)
      FloatString/100-8                     400B ± 0%      400B ± 0%     ~     (all equal)
      FloatString/1000-8                  3.10kB ± 0%    3.10kB ± 0%     ~     (all equal)
      FloatString/10000-8                 52.1kB ± 0%    52.1kB ± 0%     ~     (p=0.153 n=20+20)
      FloatString/100000-8                 582kB ± 0%     582kB ± 0%     ~     (all equal)
      FloatAdd/10-8                        0.00B          0.00B          ~     (all equal)
      FloatAdd/100-8                       0.00B          0.00B          ~     (all equal)
      FloatAdd/1000-8                      0.00B          0.00B          ~     (all equal)
      FloatAdd/10000-8                     0.00B          0.00B          ~     (all equal)
      FloatAdd/100000-8                    0.00B          0.00B          ~     (all equal)
      FloatSub/10-8                        0.00B          0.00B          ~     (all equal)
      FloatSub/100-8                       0.00B          0.00B          ~     (all equal)
      FloatSub/1000-8                      0.00B          0.00B          ~     (all equal)
      FloatSub/10000-8                     0.00B          0.00B          ~     (all equal)
      FloatSub/100000-8                    0.00B          0.00B          ~     (all equal)
      ParseFloatSmallExp-8                4.18kB ± 0%    3.60kB ± 0%  -13.79%  (p=0.000 n=20+20)
      ParseFloatLargeExp-8                18.9kB ± 0%    19.3kB ± 0%   +2.25%  (p=0.000 n=20+20)
      GCD10x10/WithoutXY-8                 96.0B ± 0%     16.0B ± 0%  -83.33%  (p=0.000 n=20+20)
      GCD10x10/WithXY-8                     240B ± 0%       88B ± 0%  -63.33%  (p=0.000 n=20+20)
      GCD10x100/WithoutXY-8                 192B ± 0%      112B ± 0%  -41.67%  (p=0.000 n=20+20)
      GCD10x100/WithXY-8                    464B ± 0%      424B ± 0%   -8.62%  (p=0.000 n=20+20)
      GCD10x1000/WithoutXY-8                416B ± 0%      336B ± 0%  -19.23%  (p=0.000 n=20+20)
      GCD10x1000/WithXY-8                 1.25kB ± 0%    1.10kB ± 0%  -12.18%  (p=0.000 n=20+20)
      GCD10x10000/WithoutXY-8             2.91kB ± 0%    2.83kB ± 0%   -2.75%  (p=0.000 n=20+20)
      GCD10x10000/WithXY-8                8.70kB ± 0%    8.55kB ± 0%   -1.76%  (p=0.000 n=16+16)
      GCD10x100000/WithoutXY-8            27.2kB ± 0%    27.2kB ± 0%   -0.29%  (p=0.000 n=20+20)
      GCD10x100000/WithXY-8               82.4kB ± 0%    82.3kB ± 0%   -0.17%  (p=0.000 n=20+19)
      GCD100x100/WithoutXY-8                288B ± 0%      384B ± 0%  +33.33%  (p=0.000 n=20+20)
      GCD100x100/WithXY-8                   464B ± 0%      576B ± 0%  +24.14%  (p=0.000 n=20+20)
      GCD100x1000/WithoutXY-8               640B ± 0%      688B ± 0%   +7.50%  (p=0.000 n=20+20)
      GCD100x1000/WithXY-8                1.52kB ± 0%    1.46kB ± 0%   -3.68%  (p=0.000 n=20+20)
      GCD100x10000/WithoutXY-8            4.24kB ± 0%    4.29kB ± 0%   +1.13%  (p=0.000 n=20+20)
      GCD100x10000/WithXY-8               11.1kB ± 0%    11.0kB ± 0%   -0.51%  (p=0.000 n=15+20)
      GCD100x100000/WithoutXY-8           40.9kB ± 0%    40.9kB ± 0%   +0.12%  (p=0.000 n=20+19)
      GCD100x100000/WithXY-8               110kB ± 0%     109kB ± 0%   -0.08%  (p=0.000 n=20+20)
      GCD1000x1000/WithoutXY-8            1.22kB ± 0%    1.06kB ± 0%  -13.16%  (p=0.000 n=20+20)
      GCD1000x1000/WithXY-8               2.37kB ± 0%    2.11kB ± 0%  -10.83%  (p=0.000 n=20+20)
      GCD1000x10000/WithoutXY-8           4.71kB ± 0%    4.63kB ± 0%   -1.70%  (p=0.000 n=20+19)
      GCD1000x10000/WithXY-8              28.2kB ± 0%    28.0kB ± 0%   -0.43%  (p=0.000 n=20+15)
      GCD1000x100000/WithoutXY-8          41.3kB ± 0%    41.2kB ± 0%   -0.20%  (p=0.000 n=20+16)
      GCD1000x100000/WithXY-8              301kB ± 0%     301kB ± 0%   -0.13%  (p=0.000 n=20+20)
      GCD10000x10000/WithoutXY-8          8.64kB ± 0%    8.48kB ± 0%   -1.85%  (p=0.000 n=20+20)
      GCD10000x10000/WithXY-8             57.2kB ± 0%    57.7kB ± 0%   +0.80%  (p=0.000 n=20+20)
      GCD10000x100000/WithoutXY-8         43.8kB ± 0%    43.7kB ± 0%   -0.19%  (p=0.000 n=20+18)
      GCD10000x100000/WithXY-8            2.08MB ± 0%    2.08MB ± 0%   -0.02%  (p=0.000 n=15+19)
      GCD100000x100000/WithoutXY-8        81.6kB ± 0%    81.4kB ± 0%   -0.20%  (p=0.000 n=20+20)
      GCD100000x100000/WithXY-8           4.32MB ± 0%    4.33MB ± 0%   +0.12%  (p=0.000 n=20+20)
      Hilbert-8                            653kB ± 0%     313kB ± 0%  -52.13%  (p=0.000 n=19+20)
      Binomial-8                          1.82kB ± 0%    1.02kB ± 0%  -43.86%  (p=0.000 n=20+20)
      QuoRem-8                             0.00B          0.00B          ~     (all equal)
      Exp-8                               11.1kB ± 0%    11.0kB ± 0%   -0.34%  (p=0.000 n=19+20)
      Exp2-8                              11.3kB ± 0%    11.3kB ± 0%   -0.35%  (p=0.000 n=19+20)
      Bitset-8                             0.00B          0.00B          ~     (all equal)
      BitsetNeg-8                          0.00B          0.00B          ~     (all equal)
      BitsetOrig-8                          103B ± 0%       63B ± 0%  -38.83%  (p=0.000 n=20+20)
      BitsetNegOrig-8                       215B ± 0%      175B ± 0%  -18.60%  (p=0.000 n=20+20)
      ModSqrt225_Tonelli-8                11.3kB ± 0%    11.0kB ± 0%   -2.76%  (p=0.000 n=20+17)
      ModSqrt225_3Mod4-8                  3.57kB ± 0%    3.53kB ± 0%   -1.12%  (p=0.000 n=20+20)
      ModSqrt231_Tonelli-8                11.0kB ± 0%    10.7kB ± 0%   -2.55%  (p=0.000 n=20+20)
      ModSqrt231_5Mod8-8                  4.21kB ± 0%    4.09kB ± 0%   -2.85%  (p=0.000 n=16+20)
      ModInverse-8                        1.44kB ± 0%    1.28kB ± 0%  -11.11%  (p=0.000 n=20+20)
      Sqrt-8                              6.00kB ± 0%    6.00kB ± 0%     ~     (all equal)
      IntSqr/1-8                           0.00B          0.00B          ~     (all equal)
      IntSqr/2-8                           0.00B          0.00B          ~     (all equal)
      IntSqr/3-8                           0.00B          0.00B          ~     (all equal)
      IntSqr/5-8                           0.00B          0.00B          ~     (all equal)
      IntSqr/8-8                           0.00B          0.00B          ~     (all equal)
      IntSqr/10-8                          0.00B          0.00B          ~     (all equal)
      IntSqr/20-8                           320B ± 0%      320B ± 0%     ~     (all equal)
      IntSqr/30-8                           480B ± 0%      480B ± 0%     ~     (all equal)
      IntSqr/50-8                           896B ± 0%      896B ± 0%     ~     (all equal)
      IntSqr/80-8                         1.28kB ± 0%    1.28kB ± 0%     ~     (all equal)
      IntSqr/100-8                        1.79kB ± 0%    1.79kB ± 0%     ~     (all equal)
      IntSqr/200-8                        3.20kB ± 0%    3.20kB ± 0%     ~     (all equal)
      IntSqr/300-8                        8.06kB ± 0%    8.06kB ± 0%     ~     (all equal)
      IntSqr/500-8                        12.3kB ± 0%    12.3kB ± 0%     ~     (all equal)
      IntSqr/800-8                        28.8kB ± 0%    28.8kB ± 0%     ~     (all equal)
      IntSqr/1000-8                       36.9kB ± 0%    36.9kB ± 0%     ~     (all equal)
      Div/20/10-8                          0.00B          0.00B          ~     (all equal)
      Div/200/100-8                        0.00B          0.00B          ~     (all equal)
      Div/2000/1000-8                      0.00B          0.00B          ~     (all equal)
      Div/20000/10000-8                    0.00B          0.00B          ~     (all equal)
      Div/200000/100000-8                   690B ± 0%      690B ± 0%     ~     (all equal)
      Mul-8                                565kB ± 0%     565kB ± 0%     ~     (all equal)
      ZeroShifts/Shl-8                    6.53kB ± 0%    6.53kB ± 0%     ~     (all equal)
      ZeroShifts/ShlSame-8                 0.00B          0.00B          ~     (all equal)
      ZeroShifts/Shr-8                    6.53kB ± 0%    6.53kB ± 0%     ~     (all equal)
      ZeroShifts/ShrSame-8                 0.00B          0.00B          ~     (all equal)
      Exp3Power/0x10-8                      192B ± 0%      112B ± 0%  -41.67%  (p=0.000 n=20+20)
      Exp3Power/0x40-8                      192B ± 0%      112B ± 0%  -41.67%  (p=0.000 n=20+20)
      Exp3Power/0x100-8                     288B ± 0%      208B ± 0%  -27.78%  (p=0.000 n=20+20)
      Exp3Power/0x400-8                     672B ± 0%      592B ± 0%  -11.90%  (p=0.000 n=20+20)
      Exp3Power/0x1000-8                  3.33kB ± 0%    3.25kB ± 0%   -2.40%  (p=0.000 n=20+20)
      Exp3Power/0x4000-8                  13.8kB ± 0%    13.7kB ± 0%   -0.58%  (p=0.000 n=20+20)
      Exp3Power/0x10000-8                  117kB ± 0%     117kB ± 0%   -0.07%  (p=0.000 n=20+20)
      Exp3Power/0x40000-8                  755kB ± 0%     755kB ± 0%   -0.01%  (p=0.000 n=19+20)
      Exp3Power/0x100000-8                5.22MB ± 0%    5.22MB ± 0%   -0.00%  (p=0.000 n=20+20)
      Exp3Power/0x400000-8                39.8MB ± 0%    39.8MB ± 0%   -0.00%  (p=0.000 n=20+19)
      Fibo-8                              3.09MB ± 0%    3.08MB ± 0%   -0.28%  (p=0.000 n=20+16)
      NatSqr/1-8                           48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      NatSqr/2-8                           64.0B ± 0%     64.0B ± 0%     ~     (all equal)
      NatSqr/3-8                           80.0B ± 0%     80.0B ± 0%     ~     (all equal)
      NatSqr/5-8                            112B ± 0%      112B ± 0%     ~     (all equal)
      NatSqr/8-8                            160B ± 0%      160B ± 0%     ~     (all equal)
      NatSqr/10-8                           192B ± 0%      192B ± 0%     ~     (all equal)
      NatSqr/20-8                           672B ± 0%      672B ± 0%     ~     (all equal)
      NatSqr/30-8                           992B ± 0%      992B ± 0%     ~     (all equal)
      NatSqr/50-8                         1.79kB ± 0%    1.79kB ± 0%     ~     (all equal)
      NatSqr/80-8                         2.69kB ± 0%    2.69kB ± 0%     ~     (all equal)
      NatSqr/100-8                        3.58kB ± 0%    3.58kB ± 0%     ~     (all equal)
      NatSqr/200-8                        6.66kB ± 0%    6.66kB ± 0%     ~     (all equal)
      NatSqr/300-8                        24.4kB ± 0%    24.4kB ± 0%     ~     (all equal)
      NatSqr/500-8                        36.9kB ± 0%    36.9kB ± 0%     ~     (all equal)
      NatSqr/800-8                        69.8kB ± 0%    69.8kB ± 0%     ~     (all equal)
      NatSqr/1000-8                       86.0kB ± 0%    86.0kB ± 0%     ~     (all equal)
      NatSetBytes/8-8                      0.00B          0.00B          ~     (all equal)
      NatSetBytes/24-8                     64.0B ± 0%     64.0B ± 0%     ~     (all equal)
      NatSetBytes/128-8                     160B ± 0%      160B ± 0%     ~     (all equal)
      NatSetBytes/7-8                      0.00B          0.00B          ~     (all equal)
      NatSetBytes/23-8                     64.0B ± 0%     64.0B ± 0%     ~     (all equal)
      NatSetBytes/127-8                     160B ± 0%      160B ± 0%     ~     (all equal)
      ScanPi-8                            75.4kB ± 0%    75.7kB ± 0%   +0.41%  (p=0.000 n=20+20)
      StringPiParallel-8                  20.4kB ± 0%    20.4kB ± 0%     ~     (p=0.223 n=20+20)
      Scan/10/Base2-8                      48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100/Base2-8                     48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/1000/Base2-8                    48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/10000/Base2-8                   48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100000/Base2-8                  48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/10/Base8-8                      48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100/Base8-8                     48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/1000/Base8-8                    48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/10000/Base8-8                   48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100000/Base8-8                  48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/10/Base10-8                     48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100/Base10-8                    48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/1000/Base10-8                   48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/10000/Base10-8                  48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100000/Base10-8                 48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/10/Base16-8                     48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100/Base16-8                    48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/1000/Base16-8                   48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/10000/Base16-8                  48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      Scan/100000/Base16-8                 48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      String/10/Base2-8                    48.0B ± 0%     48.0B ± 0%     ~     (all equal)
      String/100/Base2-8                    352B ± 0%      352B ± 0%     ~     (all equal)
      String/1000/Base2-8                 3.46kB ± 0%    3.46kB ± 0%     ~     (all equal)
      String/10000/Base2-8                41.0kB ± 0%    41.0kB ± 0%     ~     (all equal)
      String/100000/Base2-8                336kB ± 0%     336kB ± 0%     ~     (all equal)
      String/10/Base8-8                    16.0B ± 0%     16.0B ± 0%     ~     (all equal)
      String/100/Base8-8                    112B ± 0%      112B ± 0%     ~     (all equal)
      String/1000/Base8-8                 1.15kB ± 0%    1.15kB ± 0%     ~     (all equal)
      String/10000/Base8-8                12.3kB ± 0%    12.3kB ± 0%     ~     (all equal)
      String/100000/Base8-8                115kB ± 0%     115kB ± 0%     ~     (all equal)
      String/10/Base10-8                   64.0B ± 0%     24.0B ± 0%  -62.50%  (p=0.000 n=20+20)
      String/100/Base10-8                   192B ± 0%      192B ± 0%     ~     (all equal)
      String/1000/Base10-8                1.95kB ± 0%    1.95kB ± 0%     ~     (all equal)
      String/10000/Base10-8               20.0kB ± 0%    20.0kB ± 0%     ~     (p=0.983 n=19+20)
      String/100000/Base10-8               210kB ± 1%     211kB ± 1%   +0.82%  (p=0.000 n=19+20)
      String/10/Base16-8                   16.0B ± 0%     16.0B ± 0%     ~     (all equal)
      String/100/Base16-8                  96.0B ± 0%     96.0B ± 0%     ~     (all equal)
      String/1000/Base16-8                  896B ± 0%      896B ± 0%     ~     (all equal)
      String/10000/Base16-8               9.47kB ± 0%    9.47kB ± 0%     ~     (all equal)
      String/100000/Base16-8              90.1kB ± 0%    90.1kB ± 0%     ~     (all equal)
      LeafSize/0-8                        16.9kB ± 0%    16.8kB ± 0%   -0.44%  (p=0.000 n=20+20)
      LeafSize/1-8                        22.4kB ± 0%    22.3kB ± 0%   -0.34%  (p=0.000 n=20+19)
      LeafSize/2-8                        22.4kB ± 0%    22.3kB ± 0%   -0.34%  (p=0.000 n=20+19)
      LeafSize/3-8                        22.4kB ± 0%    22.3kB ± 0%   -0.34%  (p=0.000 n=20+17)
      LeafSize/4-8                        22.4kB ± 0%    22.3kB ± 0%   -0.34%  (p=0.000 n=20+19)
      LeafSize/5-8                        22.4kB ± 0%    22.3kB ± 0%   -0.33%  (p=0.000 n=20+20)
      LeafSize/6-8                        22.3kB ± 0%    22.2kB ± 0%   -0.34%  (p=0.000 n=20+20)
      LeafSize/7-8                        22.3kB ± 0%    22.2kB ± 0%   -0.35%  (p=0.000 n=20+20)
      LeafSize/8-8                        22.3kB ± 0%    22.2kB ± 0%   -0.34%  (p=0.000 n=16+20)
      LeafSize/9-8                        22.3kB ± 0%    22.2kB ± 0%   -0.33%  (p=0.000 n=20+20)
      LeafSize/10-8                       22.3kB ± 0%    22.2kB ± 0%   -0.33%  (p=0.000 n=20+20)
      LeafSize/11-8                       22.3kB ± 0%    22.2kB ± 0%   -0.33%  (p=0.000 n=20+20)
      LeafSize/12-8                       22.3kB ± 0%    22.2kB ± 0%   -0.33%  (p=0.000 n=20+20)
      LeafSize/13-8                       22.3kB ± 0%    22.2kB ± 0%   -0.34%  (p=0.000 n=20+15)
      LeafSize/14-8                       22.3kB ± 0%    22.2kB ± 0%   -0.33%  (p=0.000 n=20+20)
      LeafSize/15-8                       22.3kB ± 0%    22.2kB ± 0%   -0.33%  (p=0.000 n=20+20)
      LeafSize/16-8                       22.3kB ± 0%    22.2kB ± 0%   -0.33%  (p=0.000 n=19+20)
      LeafSize/32-8                       22.3kB ± 0%    22.2kB ± 0%   -0.32%  (p=0.000 n=20+20)
      LeafSize/64-8                       21.8kB ± 0%    21.7kB ± 0%   -0.33%  (p=0.000 n=18+19)
      ProbablyPrime/n=0-8                 15.3kB ± 0%    14.9kB ± 0%   -2.35%  (p=0.000 n=20+20)
      ProbablyPrime/n=1-8                 21.0kB ± 0%    20.7kB ± 0%   -1.71%  (p=0.000 n=20+20)
      ProbablyPrime/n=5-8                 43.4kB ± 0%    42.9kB ± 0%   -1.20%  (p=0.000 n=20+20)
      ProbablyPrime/n=10-8                71.5kB ± 0%    70.7kB ± 0%   -1.01%  (p=0.000 n=19+20)
      ProbablyPrime/n=20-8                 127kB ± 0%     126kB ± 0%   -0.88%  (p=0.000 n=20+20)
      ProbablyPrime/Lucas-8               3.07kB ± 0%    2.79kB ± 0%   -9.12%  (p=0.000 n=20+20)
      ProbablyPrime/MillerRabinBase2-8    12.1kB ± 0%    12.0kB ± 0%   -0.66%  (p=0.000 n=20+20)
      FloatSqrt/64-8                        416B ± 0%      360B ± 0%  -13.46%  (p=0.000 n=20+20)
      FloatSqrt/128-8                       640B ± 0%      584B ± 0%   -8.75%  (p=0.000 n=20+20)
      FloatSqrt/256-8                       512B ± 0%      472B ± 0%   -7.81%  (p=0.000 n=20+20)
      FloatSqrt/1000-8                    1.47kB ± 0%    1.43kB ± 0%   -2.72%  (p=0.000 n=20+20)
      FloatSqrt/10000-8                   18.2kB ± 0%    18.1kB ± 0%   -0.22%  (p=0.000 n=20+20)
      FloatSqrt/100000-8                   204kB ± 0%     204kB ± 0%   -0.02%  (p=0.000 n=20+20)
      FloatSqrt/1000000-8                 6.37MB ± 0%    6.37MB ± 0%   -0.00%  (p=0.000 n=19+20)
      [Geo mean]                          3.42kB         3.24kB        -5.33%
      
      name                              old allocs/op  new allocs/op  delta
      DecimalConversion-8                  1.65k ± 0%     1.65k ± 0%     ~     (all equal)
      FloatString/100-8                     8.00 ± 0%      8.00 ± 0%     ~     (all equal)
      FloatString/1000-8                    9.00 ± 0%      9.00 ± 0%     ~     (all equal)
      FloatString/10000-8                   22.0 ± 0%      22.0 ± 0%     ~     (all equal)
      FloatString/100000-8                   136 ± 0%       136 ± 0%     ~     (all equal)
      FloatAdd/10-8                         0.00           0.00          ~     (all equal)
      FloatAdd/100-8                        0.00           0.00          ~     (all equal)
      FloatAdd/1000-8                       0.00           0.00          ~     (all equal)
      FloatAdd/10000-8                      0.00           0.00          ~     (all equal)
      FloatAdd/100000-8                     0.00           0.00          ~     (all equal)
      FloatSub/10-8                         0.00           0.00          ~     (all equal)
      FloatSub/100-8                        0.00           0.00          ~     (all equal)
      FloatSub/1000-8                       0.00           0.00          ~     (all equal)
      FloatSub/10000-8                      0.00           0.00          ~     (all equal)
      FloatSub/100000-8                     0.00           0.00          ~     (all equal)
      ParseFloatSmallExp-8                   110 ± 0%       130 ± 0%  +18.18%  (p=0.000 n=20+20)
      ParseFloatLargeExp-8                   319 ± 0%       371 ± 0%  +16.30%  (p=0.000 n=20+20)
      GCD10x10/WithoutXY-8                  2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      GCD10x10/WithXY-8                     5.00 ± 0%      6.00 ± 0%  +20.00%  (p=0.000 n=20+20)
      GCD10x100/WithoutXY-8                 4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      GCD10x100/WithXY-8                    9.00 ± 0%     12.00 ± 0%  +33.33%  (p=0.000 n=20+20)
      GCD10x1000/WithoutXY-8                4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      GCD10x1000/WithXY-8                   11.0 ± 0%      12.0 ± 0%   +9.09%  (p=0.000 n=20+20)
      GCD10x10000/WithoutXY-8               4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      GCD10x10000/WithXY-8                  11.0 ± 0%      12.0 ± 0%   +9.09%  (p=0.000 n=20+20)
      GCD10x100000/WithoutXY-8              4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      GCD10x100000/WithXY-8                 11.0 ± 0%      12.0 ± 0%   +9.09%  (p=0.000 n=20+20)
      GCD100x100/WithoutXY-8                6.00 ± 0%     10.00 ± 0%  +66.67%  (p=0.000 n=20+20)
      GCD100x100/WithXY-8                   9.00 ± 0%     15.00 ± 0%  +66.67%  (p=0.000 n=20+20)
      GCD100x1000/WithoutXY-8               6.00 ± 0%      8.00 ± 0%  +33.33%  (p=0.000 n=20+20)
      GCD100x1000/WithXY-8                  12.0 ± 0%      13.0 ± 0%   +8.33%  (p=0.000 n=20+20)
      GCD100x10000/WithoutXY-8              6.00 ± 0%      8.00 ± 0%  +33.33%  (p=0.000 n=20+20)
      GCD100x10000/WithXY-8                 12.0 ± 0%      13.0 ± 0%   +8.33%  (p=0.000 n=20+20)
      GCD100x100000/WithoutXY-8             6.00 ± 0%      8.00 ± 0%  +33.33%  (p=0.000 n=20+20)
      GCD100x100000/WithXY-8                12.0 ± 0%      13.0 ± 0%   +8.33%  (p=0.000 n=20+20)
      GCD1000x1000/WithoutXY-8              10.0 ± 0%      10.0 ± 0%     ~     (all equal)
      GCD1000x1000/WithXY-8                 19.0 ± 0%      20.0 ± 0%   +5.26%  (p=0.000 n=20+20)
      GCD1000x10000/WithoutXY-8             8.00 ± 0%      8.00 ± 0%     ~     (all equal)
      GCD1000x10000/WithXY-8                26.0 ± 0%      26.0 ± 0%     ~     (all equal)
      GCD1000x100000/WithoutXY-8            8.00 ± 0%      8.00 ± 0%     ~     (all equal)
      GCD1000x100000/WithXY-8               27.0 ± 0%      27.0 ± 0%     ~     (all equal)
      GCD10000x10000/WithoutXY-8            10.0 ± 0%      10.0 ± 0%     ~     (all equal)
      GCD10000x10000/WithXY-8               76.0 ± 0%      78.0 ± 0%   +2.63%  (p=0.000 n=20+20)
      GCD10000x100000/WithoutXY-8           8.00 ± 0%      8.00 ± 0%     ~     (all equal)
      GCD10000x100000/WithXY-8               174 ± 0%       174 ± 0%     ~     (all equal)
      GCD100000x100000/WithoutXY-8          10.0 ± 0%      10.0 ± 0%     ~     (all equal)
      GCD100000x100000/WithXY-8              645 ± 0%       647 ± 0%   +0.31%  (p=0.000 n=20+20)
      Hilbert-8                            14.1k ± 0%     14.3k ± 0%   +0.92%  (p=0.000 n=20+20)
      Binomial-8                            38.0 ± 0%      38.0 ± 0%     ~     (all equal)
      QuoRem-8                              0.00           0.00          ~     (all equal)
      Exp-8                                 21.0 ± 0%      21.0 ± 0%     ~     (all equal)
      Exp2-8                                22.0 ± 0%      22.0 ± 0%     ~     (all equal)
      Bitset-8                              0.00           0.00          ~     (all equal)
      BitsetNeg-8                           0.00           0.00          ~     (all equal)
      BitsetOrig-8                          1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      BitsetNegOrig-8                       2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      ModSqrt225_Tonelli-8                  85.0 ± 0%      86.0 ± 0%   +1.18%  (p=0.000 n=20+20)
      ModSqrt225_3Mod4-8                    25.0 ± 0%      25.0 ± 0%     ~     (all equal)
      ModSqrt231_Tonelli-8                  80.0 ± 0%      80.0 ± 0%     ~     (all equal)
      ModSqrt231_5Mod8-8                    32.0 ± 0%      32.0 ± 0%     ~     (all equal)
      ModInverse-8                          11.0 ± 0%      11.0 ± 0%     ~     (all equal)
      Sqrt-8                                13.0 ± 0%      13.0 ± 0%     ~     (all equal)
      IntSqr/1-8                            0.00           0.00          ~     (all equal)
      IntSqr/2-8                            0.00           0.00          ~     (all equal)
      IntSqr/3-8                            0.00           0.00          ~     (all equal)
      IntSqr/5-8                            0.00           0.00          ~     (all equal)
      IntSqr/8-8                            0.00           0.00          ~     (all equal)
      IntSqr/10-8                           0.00           0.00          ~     (all equal)
      IntSqr/20-8                           1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      IntSqr/30-8                           1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      IntSqr/50-8                           1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      IntSqr/80-8                           1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      IntSqr/100-8                          1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      IntSqr/200-8                          1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      IntSqr/300-8                          3.00 ± 0%      3.00 ± 0%     ~     (all equal)
      IntSqr/500-8                          3.00 ± 0%      3.00 ± 0%     ~     (all equal)
      IntSqr/800-8                          9.00 ± 0%      9.00 ± 0%     ~     (all equal)
      IntSqr/1000-8                         9.00 ± 0%      9.00 ± 0%     ~     (all equal)
      Div/20/10-8                           0.00           0.00          ~     (all equal)
      Div/200/100-8                         0.00           0.00          ~     (all equal)
      Div/2000/1000-8                       0.00           0.00          ~     (all equal)
      Div/20000/10000-8                     0.00           0.00          ~     (all equal)
      Div/200000/100000-8                   0.00           0.00          ~     (all equal)
      Mul-8                                 2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      ZeroShifts/Shl-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      ZeroShifts/ShlSame-8                  0.00           0.00          ~     (all equal)
      ZeroShifts/Shr-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      ZeroShifts/ShrSame-8                  0.00           0.00          ~     (all equal)
      Exp3Power/0x10-8                      4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      Exp3Power/0x40-8                      4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      Exp3Power/0x100-8                     5.00 ± 0%      5.00 ± 0%     ~     (all equal)
      Exp3Power/0x400-8                     7.00 ± 0%      7.00 ± 0%     ~     (all equal)
      Exp3Power/0x1000-8                    11.0 ± 0%      11.0 ± 0%     ~     (all equal)
      Exp3Power/0x4000-8                    15.0 ± 0%      15.0 ± 0%     ~     (all equal)
      Exp3Power/0x10000-8                   29.0 ± 0%      29.0 ± 0%     ~     (all equal)
      Exp3Power/0x40000-8                    140 ± 0%       140 ± 0%     ~     (all equal)
      Exp3Power/0x100000-8                 1.12k ± 0%     1.12k ± 0%     ~     (all equal)
      Exp3Power/0x400000-8                 9.88k ± 0%     9.88k ± 0%     ~     (p=0.747 n=17+19)
      Fibo-8                                 739 ± 0%       743 ± 0%   +0.54%  (p=0.000 n=20+20)
      NatSqr/1-8                            1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSqr/2-8                            1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSqr/3-8                            1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSqr/5-8                            1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSqr/8-8                            1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSqr/10-8                           1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSqr/20-8                           2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      NatSqr/30-8                           2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      NatSqr/50-8                           2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      NatSqr/80-8                           2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      NatSqr/100-8                          2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      NatSqr/200-8                          2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      NatSqr/300-8                          4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      NatSqr/500-8                          4.00 ± 0%      4.00 ± 0%     ~     (all equal)
      NatSqr/800-8                          10.0 ± 0%      10.0 ± 0%     ~     (all equal)
      NatSqr/1000-8                         10.0 ± 0%      10.0 ± 0%     ~     (all equal)
      NatSetBytes/8-8                       0.00           0.00          ~     (all equal)
      NatSetBytes/24-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSetBytes/128-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSetBytes/7-8                       0.00           0.00          ~     (all equal)
      NatSetBytes/23-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      NatSetBytes/127-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      ScanPi-8                              60.0 ± 0%      61.0 ± 0%   +1.67%  (p=0.000 n=20+20)
      StringPiParallel-8                    24.0 ± 0%      24.0 ± 0%     ~     (all equal)
      Scan/10/Base2-8                       1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100/Base2-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/1000/Base2-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/10000/Base2-8                    1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100000/Base2-8                   1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/10/Base8-8                       1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100/Base8-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/1000/Base8-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/10000/Base8-8                    1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100000/Base8-8                   1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/10/Base10-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100/Base10-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/1000/Base10-8                    1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/10000/Base10-8                   1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100000/Base10-8                  1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/10/Base16-8                      1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100/Base16-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/1000/Base16-8                    1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/10000/Base16-8                   1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      Scan/100000/Base16-8                  1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/10/Base2-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/100/Base2-8                    1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/1000/Base2-8                   1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/10000/Base2-8                  1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/100000/Base2-8                 1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/10/Base8-8                     1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/100/Base8-8                    1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/1000/Base8-8                   1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/10000/Base8-8                  1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/100000/Base8-8                 1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/10/Base10-8                    2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      String/100/Base10-8                   2.00 ± 0%      2.00 ± 0%     ~     (all equal)
      String/1000/Base10-8                  3.00 ± 0%      3.00 ± 0%     ~     (all equal)
      String/10000/Base10-8                 3.00 ± 0%      3.00 ± 0%     ~     (all equal)
      String/100000/Base10-8                3.00 ± 0%      3.00 ± 0%     ~     (all equal)
      String/10/Base16-8                    1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/100/Base16-8                   1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/1000/Base16-8                  1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/10000/Base16-8                 1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      String/100000/Base16-8                1.00 ± 0%      1.00 ± 0%     ~     (all equal)
      LeafSize/0-8                          10.0 ± 0%      10.0 ± 0%     ~     (all equal)
      LeafSize/1-8                          13.0 ± 0%      13.0 ± 0%     ~     (all equal)
      LeafSize/2-8                          13.0 ± 0%      13.0 ± 0%     ~     (all equal)
      LeafSize/3-8                          13.0 ± 0%      13.0 ± 0%     ~     (all equal)
      LeafSize/4-8                          13.0 ± 0%      13.0 ± 0%     ~     (all equal)
      LeafSize/5-8                          13.0 ± 0%      13.0 ± 0%     ~     (all equal)
      LeafSize/6-8                          12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/7-8                          12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/8-8                          12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/9-8                          12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/10-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/11-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/12-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/13-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/14-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/15-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/16-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/32-8                         12.0 ± 0%      12.0 ± 0%     ~     (all equal)
      LeafSize/64-8                         11.0 ± 0%      11.0 ± 0%     ~     (all equal)
      ProbablyPrime/n=0-8                   52.0 ± 0%      52.0 ± 0%     ~     (all equal)
      ProbablyPrime/n=1-8                   73.0 ± 0%      73.0 ± 0%     ~     (all equal)
      ProbablyPrime/n=5-8                    157 ± 0%       157 ± 0%     ~     (all equal)
      ProbablyPrime/n=10-8                   262 ± 0%       262 ± 0%     ~     (all equal)
      ProbablyPrime/n=20-8                   472 ± 0%       472 ± 0%     ~     (all equal)
      ProbablyPrime/Lucas-8                 22.0 ± 0%      22.0 ± 0%     ~     (all equal)
      ProbablyPrime/MillerRabinBase2-8      29.0 ± 0%      29.0 ± 0%     ~     (all equal)
      FloatSqrt/64-8                        9.00 ± 0%     10.00 ± 0%  +11.11%  (p=0.000 n=20+20)
      FloatSqrt/128-8                       12.0 ± 0%      13.0 ± 0%   +8.33%  (p=0.000 n=20+20)
      FloatSqrt/256-8                       8.00 ± 0%      8.00 ± 0%     ~     (all equal)
      FloatSqrt/1000-8                      9.00 ± 0%      9.00 ± 0%     ~     (all equal)
      FloatSqrt/10000-8                     14.0 ± 0%      14.0 ± 0%     ~     (all equal)
      FloatSqrt/100000-8                    33.0 ± 0%      33.0 ± 0%     ~     (all equal)
      FloatSqrt/1000000-8                  1.16k ± 0%     1.16k ± 0%     ~     (all equal)
      [Geo mean]                            6.62           6.76        +2.09%
      
      Change-Id: Id9df4157cac1e07721e35cff7fcdefe60703873a
      Reviewed-on: https://go-review.googlesource.com/c/150999
      Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
      Reviewed-by: 's avatarAlan Donovan <adonovan@google.com>
      Reviewed-by: 's avatarRobert Griesemer <gri@golang.org>
      bfc54bb6
    • Andrew Bonventre's avatar
      doc: update go1.12.html using latest output from relnote tool · 7f3c6f64
      Andrew Bonventre authored
      Change-Id: I6b20c3fd7f15f35d2288d9a0fd6512c541a62c92
      Reviewed-on: https://go-review.googlesource.com/c/151558Reviewed-by: 's avatarBryan C. Mills <bcmills@google.com>
      7f3c6f64
    • Keith Randall's avatar
      cmd/compile: randomize value order in block for testing · 2b4f24a2
      Keith Randall authored
      A little bit of compiler stress testing. Randomize the order
      of the values in a block before every phase. This randomization
      makes sure that we're not implicitly depending on that order.
      
      Currently the random seed is a hash of the function name.
      It provides determinism, but sacrifices some coverage.
      Other arrangements are possible (env var, ...) but require
      more setup.
      
      Fixes #20178
      
      Change-Id: Idae792a23264bd9a3507db6ba49b6d591a608e83
      Reviewed-on: https://go-review.googlesource.com/c/33909Reviewed-by: 's avatarCherry Zhang <cherryyz@google.com>
      2b4f24a2
    • Keith Randall's avatar
      cmd/compile: order nil checks by source position · ff9481ec
      Keith Randall authored
      There's nothing enforcing ordering between redundant nil checks when
      they may occur during the same memory state. Commit to using the
      earliest one in source order.
      
      Otherwise the choice of which to remove depends on the ordering of
      values in a block (before scheduling). That's unfortunate when trying
      to ensure that the compiler doesn't depend on that ordering for
      anything.
      
      Update #20178
      
      Change-Id: I2cdd5be10618accd9d91fa07406c90cbd023ffba
      Reviewed-on: https://go-review.googlesource.com/c/151517
      Run-TryBot: Keith Randall <khr@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarDavid Chase <drchase@google.com>
      Reviewed-by: 's avatarCherry Zhang <cherryyz@google.com>
      ff9481ec
    • Tobias Klauser's avatar
      vendor: update x/net/internal/nettest for aix support · 71f9f4b8
      Tobias Klauser authored
      Update golang.org/x/net/internal/nettest to x/net git rev 9b4f9f5ad519
      for:
      
         internal/nettest: add AIX operating system
         https://golang.org/cl/144077
      
      This fixes the build failure of the vendored x/net/internal/nettest on
      aix/ppc64.
      
      Additionally this also pulls in:
      
        all: re-adjust build constraints for JS and NaCl
        https://golang.org/cl/122539
      
      Updates #25893
      
      Change-Id: I9abefc7d4ad158e9e68913362f7f1320321d6f5f
      Reviewed-on: https://go-review.googlesource.com/c/151301
      Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
      71f9f4b8
    • Ian Lance Taylor's avatar
      doc: fix formatting for Darwin entry · 5966c2f4
      Ian Lance Taylor authored
      Updates #23011
      
      Change-Id: I38360501c772ddf7cc4bd1b5d7b0225387ead535
      Reviewed-on: https://go-review.googlesource.com/c/151361Reviewed-by: 's avatarTobias Klauser <tobias.klauser@gmail.com>
      5966c2f4
    • Alex Brainman's avatar
      plugin: skip building tests on linux/arm64 · 1cac3e84
      Alex Brainman authored
      It appears that linux/arm64
      
      https://build.golang.org/log/6808dbded6aebadf68cb65a0e30e4d1a62cd687b
      
      fails with
      
      /workdir/go/pkg/tool/linux_arm64/link: running gcc failed: exit status 1
      /usr/bin/ld.gold: internal error in global, at ../../gold/aarch64.cc:4973
      collect2: error: ld returned 1 exit status
      FAIL plugin [build failed]
      
      error. So stop building these tests on linux/arm64.
      
      Fixes linux/arm64 build
      
      Change-Id: I41eb3d9659f7967d80136513899a5203bbf03fb1
      Reviewed-on: https://go-review.googlesource.com/c/151478
      Run-TryBot: Alex Brainman <alex.brainman@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarCherry Zhang <cherryyz@google.com>
      1cac3e84
    • Tobias Klauser's avatar
      lib/time: update tzdata to 2018g · 3dd509d2
      Tobias Klauser authored
      Now that the tree has been frozen for some time, update the tzdata
      database to version 2018g (released 2018-10-26) for Go 1.12.
      
      Updates #22487
      
      Change-Id: I9e82bcdaef28d308643c08c9fd3472e4c14a196e
      Reviewed-on: https://go-review.googlesource.com/c/151299
      Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      3dd509d2
    • Wil Selwood's avatar
      unicode: improve generated comments for categories · d704b5c9
      Wil Selwood authored
      The comments on the category range tables in the unicode package are fairly
      redundent and require an external source to translate into human readable
      category names.
      
      This adds a look up table with the category descriptions and uses it if
      available when generating the comments for the range tables.
      
      Fixes #28954
      
      Change-Id: I853e2d270def6492c2c1dd2ad0ec761a74c04e5d
      Reviewed-on: https://go-review.googlesource.com/c/151297Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
      d704b5c9
    • Ian Lance Taylor's avatar
      doc: preannounce dropping macOS 10.10 support · 6bf53138
      Ian Lance Taylor authored
      Updates #23011
      
      Change-Id: I0eccea5d08a8758585f183540787b78fb80aa36a
      Reviewed-on: https://go-review.googlesource.com/c/151360Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      6bf53138
    • Ian Lance Taylor's avatar
      net: use .invalid for an invalid domain name · 3a60629a
      Ian Lance Taylor authored
      Fixes #25370
      
      Change-Id: I12da0cc17f433ca12c85fb986d65ac9ecb2c3f20
      Reviewed-on: https://go-review.googlesource.com/c/151359
      Run-TryBot: Ian Lance Taylor <iant@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      3a60629a
  2. 27 Nov, 2018 13 commits
  3. 26 Nov, 2018 13 commits
  4. 24 Nov, 2018 1 commit
    • Alex Brainman's avatar
      debug/pe: use kernel32.dll in TestImportTableInUnknownSection · 048c9164
      Alex Brainman authored
      TestImportTableInUnknownSection was introduced in CL 110555 to
      test PE executable with import table located in section other than
      ".idata". We used atmfd.dll for that purpose, but it seems
      atmfd.dll is not present on some systems.
      
      Use kernel32.dll instead. kernel32.dll import table is located in
      ".rdata" section, so it should do the job. And every Windows
      system has kernel32.dll file.
      
      Also make TestImportTableInUnknownSection run on windows-arm,
      since windows-arm should also have kernel32.dll file.
      
      Updates #27904
      
      Change-Id: Ie005ee10e46ae0c06e83929d581e89f86c051eea
      Reviewed-on: https://go-review.googlesource.com/c/151137
      Run-TryBot: Alex Brainman <alex.brainman@gmail.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
      048c9164