diff options
author | Andy Polyakov <appro@openssl.org> | 2004-03-28 23:27:47 +0200 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2004-03-28 23:27:47 +0200 |
commit | 1a979201d5b099edbc1e3ad2fb157ee058091a40 (patch) | |
tree | aeb8ac81bc854026ce89d455deca957b10139a2c /crypto/md32_common.h | |
parent | Enhance EVP code to generate random symmetric keys of the (diff) | |
download | openssl-1a979201d5b099edbc1e3ad2fb157ee058091a40.tar.xz openssl-1a979201d5b099edbc1e3ad2fb157ee058091a40.zip |
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/md32_common.h')
-rw-r--r-- | crypto/md32_common.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/crypto/md32_common.h b/crypto/md32_common.h index 0cdc06e31e..307ec30dfc 100644 --- a/crypto/md32_common.h +++ b/crypto/md32_common.h @@ -179,13 +179,11 @@ */ #undef ROTATE #ifndef PEDANTIC -# if 0 /* defined(_MSC_VER) */ +# if defined(_MSC_VER) || defined(__ICC) # define ROTATE(a,n) _lrotl(a,n) # elif defined(__MWERKS__) # if defined(__POWERPC__) # define ROTATE(a,n) __rlwinm(a,n,0,31) -# elif defined(OPENSSL_SYSNAME_NETWARE) -# define ROTATE(a,n) _lrotl(a,n) # elif defined(__MC68K__) /* Motorola specific tweak. <appro@fy.chalmers.se> */ # define ROTATE(a,n) ( n<24 ? __rol(a,n) : __ror(a,32-n) ) |