diff options
author | Andy Polyakov <appro@openssl.org> | 2004-03-28 21:27:47 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2004-03-28 21:27:47 +0000 |
commit | 1a979201d5b099edbc1e3ad2fb157ee058091a40 (patch) | |
tree | aeb8ac81bc854026ce89d455deca957b10139a2c /crypto/rc5 | |
parent | 216659eb87485402a8e861a6de77233d1f5d7425 (diff) |
This is essentially Intel 32-bit compiler tune-up. To start with all
available compiler versions generated bogus machine code trying to
compile new crypto/des/cfb_enc.c. Secondly, 8th version defines
__GNUC__ macro, but fails to compile *some* inline assembler correctly.
Note that all versions of icc implement MSC-like _lrot[rl] intrinsic,
which is used now instead of offensive asm. Finally, unnecessary linker
dependencies are eliminated. Most notably dependency from libirc.a
caused trouble at application start-up, if libcrypto.so is linked with
-Bsymbolic (which it is).
Diffstat (limited to 'crypto/rc5')
-rw-r--r-- | crypto/rc5/rc5_locl.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/rc5/rc5_locl.h b/crypto/rc5/rc5_locl.h index f4ebc23004..282dd38822 100644 --- a/crypto/rc5/rc5_locl.h +++ b/crypto/rc5/rc5_locl.h @@ -146,7 +146,7 @@ *((c)++)=(unsigned char)(((l)>> 8L)&0xff), \ *((c)++)=(unsigned char)(((l) )&0xff)) -#if defined(OPENSSL_SYS_WIN32) && defined(_MSC_VER) +#if (defined(OPENSSL_SYS_WIN32) && defined(_MSC_VER)) || defined(__ICC) #define ROTATE_l32(a,n) _lrotl(a,n) #define ROTATE_r32(a,n) _lrotr(a,n) #elif defined(__GNUC__) && __GNUC__>=2 && !defined(__STRICT_ANSI__) && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) && !defined(PEDANTIC) |