diff options
author | weidai <weidai11@users.noreply.github.com> | 2007-05-04 15:24:09 +0000 |
---|---|---|
committer | weidai <weidai11@users.noreply.github.com> | 2007-05-04 15:24:09 +0000 |
commit | d2510f30c75b341dcbc45432a4bd38c0513f2616 (patch) | |
tree | 3ddcd92ac078642dfed5375980dc2db4006d1498 /tiger.cpp | |
parent | 460c2d6c6adc5490c77777f8f8b2e96cc4bf4eb3 (diff) | |
download | cryptopp-git-d2510f30c75b341dcbc45432a4bd38c0513f2616.tar.gz |
fix compile for x64, DLL and VC 6
Diffstat (limited to 'tiger.cpp')
-rw-r--r-- | tiger.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -34,7 +34,7 @@ void Tiger::TruncatedFinal(byte *hash, size_t size) void Tiger::Transform (word64 *digest, const word64 *X) { -#if CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE +#if CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE && CRYPTOPP_BOOL_X86 if (HasSSE2()) { #ifdef __GNUC__ @@ -43,9 +43,14 @@ void Tiger::Transform (word64 *digest, const word64 *X) ".intel_syntax noprefix;" AS1( push ebx) #else + #if _MSC_VER < 1300 + const word64 *t = table; + AS2( mov edx, t) + #else + AS2( lea edx, [table]) + #endif AS2( mov eax, digest) AS2( mov esi, X) - AS2( lea edx, [table]) #endif AS2( movq mm0, [eax]) AS2( movq mm1, [eax+1*8]) |