[PATCH v2 0/3] crypto: x86/blowfish - Cleanup and convert to ECB/CBC macros

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We can acheive a reduction in code size by cleaning up unused logic in
assembly functions, and by replacing handwritten ECB/CBC routines with
helper macros from 'ecb_cbc_helpers.h'.

Additionally, these changes can allow future x86_64 optimized
implementations to take advantage of blowfish-x86_64's fast 1-way and
4-way functions with less code churn.

When testing the patch, I saw a few percent lower cycle counts per
iteration on Intel Skylake for both encryption and decryption. This
is merely a single observation and this series has not been rigorously
benchmarked, as performance changes are not expected. 

v1 -> v2:
 - Fixed typo that caused an assembler failure
 - Added note about performance to cover letter

Peter Lafreniere (3):
  crypto: x86/blowfish - Remove unused encode parameter
  crypto: x86/blowfish - Convert to use ECB/CBC helpers
  crypto: x86/blowfish - Eliminate use of SYM_TYPED_FUNC_START in asm

 arch/x86/crypto/blowfish-x86_64-asm_64.S |  71 ++++----
 arch/x86/crypto/blowfish_glue.c          | 200 +++--------------------
 2 files changed, 55 insertions(+), 216 deletions(-)

-- 
2.39.1




[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]
  Powered by Linux