From cc319dc33cc73b0ec368864a4220604170acb674 Mon Sep 17 00:00:00 2001 From: weidai Date: Tue, 10 Mar 2009 02:56:19 +0000 Subject: 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 --- rijndael.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'rijndael.cpp') 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 -- cgit v1.2.1