diff options
author | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2009-03-10 02:56:19 +0000 |
---|---|---|
committer | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2009-03-10 02:56:19 +0000 |
commit | cc319dc33cc73b0ec368864a4220604170acb674 (patch) | |
tree | 1c52d52d455d3b48e60bfc8b075f4d611068be14 /rijndael.cpp | |
parent | 77d342339b3149f02aaa3521a27b6216468d43dc (diff) | |
download | cryptopp-cc319dc33cc73b0ec368864a4220604170acb674.tar.gz |
add x86/x64 assembly for SHA-256,
add DEFAULT_CHANNEL and AAD_CHANNEL,
fix macChannel for AuthenticatedEncryptionFilter
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@440 57ff6487-cd31-0410-9ec3-f628ee90f5f0
Diffstat (limited to 'rijndael.cpp')
-rw-r--r-- | rijndael.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/rijndael.cpp b/rijndael.cpp index 589733e..04e1f21 100644 --- a/rijndael.cpp +++ b/rijndael.cpp @@ -534,8 +534,10 @@ CRYPTOPP_NAKED void CRYPTOPP_FASTCALL Rijndael_Enc_AdvancedProcessBlocks(void *l #endif #if CRYPTOPP_BOOL_X86 - AS_PUSH_IF86( bx) - AS_PUSH_IF86( bp) +#if !defined(_MSC_VER) || (_MSC_VER < 1300) + AS_PUSH_IF86(bx) +#endif + AS_PUSH_IF86(bp) AS2( mov [ecx+16*12+16*4], esp) AS2( lea esp, [ecx-512]) #endif @@ -583,7 +585,7 @@ CRYPTOPP_NAKED void CRYPTOPP_FASTCALL Rijndael_Enc_AdvancedProcessBlocks(void *l // counter mode one-time setup AS2( mov WORD_REG(bp), [L_INBLOCKS]) - AS2( movdqa xmm2, [WORD_REG(bp)]) // counter + AS2( movdqu xmm2, [WORD_REG(bp)]) // counter AS2( pxor xmm2, xmm1) AS2( psrldq xmm1, 14) AS2( movd eax, xmm1) @@ -843,11 +845,13 @@ CRYPTOPP_NAKED void CRYPTOPP_FASTCALL Rijndael_Enc_AdvancedProcessBlocks(void *l #else AS2( mov rbp, [L_BP]) #endif - AS_POP_IF86( bp) - AS_POP_IF86( bx) + AS_POP_IF86(bp) +#if !defined(_MSC_VER) || (_MSC_VER < 1300) + AS_POP_IF86(bx) +#endif #ifndef __GNUC__ - AS_POP_IF86( di) - AS_POP_IF86( si) + AS_POP_IF86(di) + AS_POP_IF86(si) #endif #ifdef CRYPTOPP_GENERATE_X64_MASM pop r12 |