Hi! I do realize that I'm concentrating on wrong matters (after all,
blowfish is never used by SSL applications), but I couldn't abstain from
commenting:-) First of I fail to understand why #define BF_PTR2 would
perform better than the last "generic" version. The one that performs
best on Alpha:

( S[        (int)(R>>24L)      ] + \
  S[0x0100+((int)(R>>16L)&0xff)])^ \
  S[0x0200+((int)(R>> 8L)&0xff)])+ \
  S[0x0300+((int)(R     )&0xff)])

Intel does have instructions that "multiply" array index by 4 at no
cost... So that latter *should* generate better code. And..............
it does:-) #undef BF_PTR* performs at least 25% faster on Intel! Yeah, I
know there is assembler implementation provided. As I said I just
couldn't abstain...

Andy.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to