Home GnuPG

arcfour: more optimized version for non-i386 architectures
f9371c026aadUnpublished

Unpublished Commit ยท Learn More

Not On Permanent Ref: This commit is not an ancestor of any permanent ref.

Description

arcfour: more optimized version for non-i386 architectures

* cipher/arcfour.c (ARCFOUR_context): Reorder members.
(do_encrypt_stream) [!__i386__]: Faster implementation for non-i386.
(do_arcfour_setkey): Avoid modulo operations.

Patch adds faster arcfour implementation for non-i386 architectures. New code
is not activated on i386 as performance would regress. This is because i386
does not have enough registers hold new variables.

Speed up on Intel i5-4570 (x86_64): 1.56x
Speed up on ARM Cortex-A8: 1.18x

  • Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>

Details

Provenance
jukiviliAuthored on Oct 16 2013, 8:23 PM
Parents
rCc89ab921ccfa: Avoid void* pointer arithmetic
Branches
Unknown
Tags
Unknown

Event Timeline

Jussi Kivilinna <jussi.kivilinna@iki.fi> committed rCf9371c026aad: arcfour: more optimized version for non-i386 architectures (authored by Jussi Kivilinna <jussi.kivilinna@iki.fi>).Oct 16 2013, 8:23 PM