• Udalov Max's avatar
    crypto/sha1: use math/bits.RotateLeft32 instead of ad-hoc implementation. · 7cd39de2
    Udalov Max authored
    This makes code more idiomatic and shows small performance gains of generic benchmarks.
    
    Updates: #31456
    
    name            old time/op    new time/op    delta
    Hash8Bytes-8       275ns ± 4%     270ns ± 0%    ~     (p=0.213 n=9+8)
    Hash320Bytes-8    1.46µs ± 5%    1.39µs ± 1%  -4.54%  (p=0.000 n=10+10)
    Hash1K-8          3.99µs ± 5%    3.86µs ± 1%  -3.38%  (p=0.023 n=10+10)
    Hash8K-8          28.9µs ± 0%    28.9µs ± 1%    ~     (p=0.315 n=10+10)
    
    name            old speed      new speed      delta
    Hash8Bytes-8    28.8MB/s ± 9%  29.6MB/s ± 0%    ~     (p=0.151 n=10+8)
    Hash320Bytes-8   220MB/s ± 5%   230MB/s ± 1%  +4.65%  (p=0.000 n=10+10)
    Hash1K-8         257MB/s ± 5%   265MB/s ± 1%  +3.38%  (p=0.023 n=10+10)
    Hash8K-8         283MB/s ± 0%   284MB/s ± 1%    ~     (p=0.315 n=10+10)
    
    Change-Id: Iee63aa042614e3bbeda9aaf5236180d4153f03c4
    Reviewed-on: https://go-review.googlesource.com/c/go/+/171729Reviewed-by: default avatarIlya Tokar <tocarip@gmail.com>
    Run-TryBot: Ilya Tokar <tocarip@gmail.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    7cd39de2
sha1block.go 2.26 KB