summaryrefslogtreecommitdiffstats
path: root/crypto/des/des_locl.h
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2004-03-28 21:27:47 +0000
committerAndy Polyakov <appro@openssl.org>2004-03-28 21:27:47 +0000
commit1a979201d5b099edbc1e3ad2fb157ee058091a40 (patch)
treeaeb8ac81bc854026ce89d455deca957b10139a2c /crypto/des/des_locl.h
parent216659eb87485402a8e861a6de77233d1f5d7425 (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/des/des_locl.h')
-rw-r--r--crypto/des/des_locl.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/des/des_locl.h b/crypto/des/des_locl.h
index e44e8e98b2..f992697b08 100644
--- a/crypto/des/des_locl.h
+++ b/crypto/des/des_locl.h
@@ -160,7 +160,7 @@
} \
}
-#if defined(OPENSSL_SYS_WIN32) && defined(_MSC_VER)
+#if (defined(OPENSSL_SYS_WIN32) && defined(_MSC_VER)) || defined(__ICC)
#define ROTATE(a,n) (_lrotr(a,n))
#elif defined(__GNUC__) && __GNUC__>=2 && !defined(__STRICT_ANSI__) && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) && !defined(PEDANTIC)
# if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__)