• Lynn Boger's avatar
    crypto/md5: fix md5block asm to work on big endian ppc64 · fcd1ec0c
    Lynn Boger authored
    This handles a TODO in the md5block_ppc64le.s file to
    make use of byte reverse loads so the function works for
    big endian as well as little endian. File name is now
    md5block_ppc64x.s.
    
    name                 old time/op    new time/op    delta
    Hash8Bytes              537ns ± 0%     299ns ± 0%  -44.32%  (p=0.000 n=8+1)
    Hash1K                 4.74µs ± 0%    3.24µs ± 0%  -31.64%  (p=0.250 n=7+1)
    Hash8K                 34.4µs ± 0%    23.6µs ± 0%  -31.56%  (p=0.222 n=8+1)
    Hash8BytesUnaligned     537ns ± 0%     298ns ± 0%  -44.51%  (p=0.000 n=8+1)
    Hash1KUnaligned        4.74µs ± 0%    3.24µs ± 0%  -31.48%  (p=0.222 n=8+1)
    Hash8KUnaligned        34.4µs ± 0%    23.6µs ± 0%  -31.39%  (p=0.222 n=8+1)
    
    name                 old speed      new speed      delta
    Hash8Bytes           14.9MB/s ± 0%  26.8MB/s ± 0%  +79.76%  (p=0.222 n=8+1)
    Hash1K                216MB/s ± 0%   316MB/s ± 0%  +46.29%  (p=0.250 n=7+1)
    Hash8K                238MB/s ± 0%   348MB/s ± 0%  +46.11%  (p=0.222 n=8+1)
    Hash8BytesUnaligned  14.9MB/s ± 0%  26.8MB/s ± 0%  +79.76%  (p=0.222 n=8+1)
    Hash1KUnaligned       216MB/s ± 0%   316MB/s ± 0%  +45.95%  (p=0.222 n=8+1)
    Hash8KUnaligned       238MB/s ± 0%   347MB/s ± 0%  +45.75%  (p=0.222 n=8+1)
    
    Change-Id: I2e226bf7e69e0acd49db1af42e4fd8b87b155606
    Reviewed-on: https://go-review.googlesource.com/c/144599
    Run-TryBot: Lynn Boger <laboger@linux.vnet.ibm.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>
    Reviewed-by: 's avatarMichael Munday <mike.munday@ibm.com>
    fcd1ec0c
Name
Last commit
Last update
..
example_test.go Loading commit data...
gen.go Loading commit data...
md5.go Loading commit data...
md5_test.go Loading commit data...
md5block.go Loading commit data...
md5block_386.s Loading commit data...
md5block_amd64.s Loading commit data...
md5block_amd64p32.s Loading commit data...
md5block_arm.s Loading commit data...
md5block_arm64.s Loading commit data...
md5block_decl.go Loading commit data...
md5block_generic.go Loading commit data...
md5block_ppc64x.s Loading commit data...
md5block_s390x.s Loading commit data...