1. 30 Nov, 2018 6 commits
  2. 29 Nov, 2018 26 commits
  3. 28 Nov, 2018 8 commits
    • Lynn Boger's avatar
      cmd/asm,cmd/internal/obj/ppc64: add VPERMXOR to ppc64 assembler · 048580d3
      Lynn Boger authored
      VPERMXOR is missing from the Go assembler for ppc64. It has the
      same format as VPERM. It was requested by an external user so
      they could write an optimized algorithm in asm.
      
      Change-Id: Icf4c682f7f46716ccae64e6ae3d62e8cec67f6c1
      Reviewed-on: https://go-review.googlesource.com/c/151578
      Run-TryBot: Lynn Boger <laboger@linux.vnet.ibm.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>
      048580d3
    • Meng Zhuo's avatar
      net/http: prevent transport sends two "Connection: close" headers · 9aadbf57
      Meng Zhuo authored
      There are three functions that do Connection header write:
      1. transport.go/ persistConn.roundTrip
      2. transfer.go/ transferWriter.writeHeader
      3. request.go/ Request.write
      
      The root cause is roundTrip didn't lookup into request.Close and
      transferWriter
      didn't take care of extraHeaders.
      
      Fixes #28886
      
      Change-Id: I1d131019c7cd42eb1bcc972c631b7df7511c1f39
      Reviewed-on: https://go-review.googlesource.com/c/150722
      Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      9aadbf57
    • Keith Randall's avatar
      cmd/compile: ensure S390X moves don't overflow int32 · 4f15b547
      Keith Randall authored
      Break ADDconst into ADD + MOVDconst, so that if the constant
      is too big it won't overflow ADDconst's constant field.
      
      For normal sizes, other rules will recombine into an ADDconst.
      
      Fixes S390X breakage from CL 33909.
      
      Change-Id: Id804ee052365527efb580f797688b0ce83c47915
      Reviewed-on: https://go-review.googlesource.com/c/151597
      Run-TryBot: Keith Randall <khr@golang.org>
      Reviewed-by: default avatarMichael Munday <mike.munday@ibm.com>
      4f15b547
    • 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: default 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: default 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: default avatarAlan Donovan <adonovan@google.com>
      Reviewed-by: default 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: default 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: default avatarCherry Zhang <cherryyz@google.com>
      2b4f24a2