diff options
author | Andy Polyakov <appro@openssl.org> | 2008-11-01 12:46:18 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2008-11-01 12:46:18 +0000 |
commit | 122396f2dbeda0f25e9af1bb069a324ec793da57 (patch) | |
tree | 0ff58eb4959f44bed590c8f9266bcb31e9e012e3 /crypto/sha/sha512.c | |
parent | 09a60c9833fa6800230e23a7e42a48832792e629 (diff) |
Fix SHA512 and optimize BN for mingw64.
Diffstat (limited to 'crypto/sha/sha512.c')
-rw-r--r-- | crypto/sha/sha512.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/crypto/sha/sha512.c b/crypto/sha/sha512.c index 2284eefc8f..86115d890d 100644 --- a/crypto/sha/sha512.c +++ b/crypto/sha/sha512.c @@ -350,7 +350,7 @@ static const SHA_LONG64 K512[80] = { #ifndef PEDANTIC # if defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) # if defined(__x86_64) || defined(__x86_64__) -# define ROTR(a,n) ({ unsigned long ret; \ +# define ROTR(a,n) ({ SHA_LONG64 ret; \ asm ("rorq %1,%0" \ : "=r"(ret) \ : "J"(n),"0"(a) \ @@ -387,6 +387,7 @@ static const SHA_LONG64 K512[80] = { # endif # elif defined(_MSC_VER) # if defined(_WIN64) /* applies to both IA-64 and AMD64 */ +# pragma intrinsic(_rotr64) # define ROTR(a,n) _rotr64((a),n) # endif # if defined(_M_IX86) && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) |