• Nicolas Kaiser's avatar
    crypto: cast5 - simplify if-statements · 895be157
    Nicolas Kaiser authored
    I noticed that by factoring out common rounds from the
    branches of the if-statements in the encryption and
    decryption functions, the executable file size goes down
    significantly, for crypto/cast5.ko from 26688 bytes
    to 24336 bytes (amd64).
    
    On my test system, I saw a slight speedup. This is the
    first time I'm doing such a benchmark - I found a similar
    one on the crypto mailing list, and I hope I did it right?
    
    Before:
    # cryptsetup create dm-test /dev/hda2 -c cast5-cbc-plain -s 128
    Passsatz eingeben: 
    # dd if=/dev/zero of=/dev/mapper/dm-test bs=1M count=50
    52428800 Bytes (52 MB) kopiert, 2,43484 s, 21,5 MB/s
    # dd if=/dev/zero of=/dev/mapper/dm-test bs=1M count=50
    52428800 Bytes (52 MB) kopiert, 2,4089 s, 21,8 MB/s
    # dd if=/dev/zero of=/dev/mapper/dm-test bs=1M count=50
    52428800 Bytes (52 MB) kopiert, 2,41091 s, 21,7 MB/s
    
    After:
    # cryptsetup create dm-test /dev/hda2 -c cast5-cbc-plain -s 128
    Passsatz eingeben: 
    # dd if=/dev/zero of=/dev/mapper/dm-test bs=1M count=50
    52428800 Bytes (52 MB) kopiert, 2,38128 s, 22,0 MB/s
    # dd if=/dev/zero of=/dev/mapper/dm-test bs=1M count=50
    52428800 Bytes (52 MB) kopiert, 2,29486 s, 22,8 MB/s
    # dd if=/dev/zero of=/dev/mapper/dm-test bs=1M count=50
    52428800 Bytes (52 MB) kopiert, 2,37162 s, 22,1 MB/s
    Signed-off-by: default avatarNicolas Kaiser <nikai@nikai.net>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    895be157
cast5.c 33 KB