Thanks, Jeff. I think I understand what is going on now. There are two seperate problems. One is that the pshufw instruction used in Whirlpool assembly code is not in the P2, even when it only manipulates MMX registers. The other is that I used SSE2 intrinsics to initialize static variables for Salsa, and those initializers were not wrapped around a "if (HasSSE2())".
I will get a fix posted ASAP. ----- Original Message ----- From: "Jeffrey Walton" <[EMAIL PROTECTED]> To: "Crypto++" <[EMAIL PROTECTED]> Sent: Monday, June 11, 2007 9:12 PM Subject: Whirlpool and PII (233 MHz) > > Hi Wei, > > Running "CryptTest.exe v"... > > It appears Whirlpool is not guarded properly at line 511 (007C5E03 > pshufw mm7,mm7,4Eh ). This is with CRYPTOPP_DISABLE_SSE2 defined. > > Jeff > > KSH(0, 0, 7, 6, 5, 4) > 007C5DFC mov eax,dword ptr [esp+28h] > 007C5E00 movzx edi,al > 007C5E03 pshufw mm7,mm7,4Eh > 007C5E07 pxor mm7,mmword ptr [ebx+edi*8+1800h] > 007C5E0F movzx edi,ah > 007C5E12 pshufw mm6,mm6,4Eh > 007C5E16 pxor mm6,mmword ptr [ebx+edi*8+1000h] > 007C5E1E shr eax,10h > 007C5E21 movzx edi,al > 007C5E24 shr eax,8 > 007C5E27 pshufw mm5,mm5,4Eh > 007C5E2B pxor mm5,mmword ptr [ebx+edi*8+800h] > 007C5E33 pshufw mm4,mm4,4Eh > 007C5E37 pxor mm4,mmword ptr [ebx+eax*8] > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the "Crypto++ Users" Google Group. To unsubscribe, send an email to [EMAIL PROTECTED] More information about Crypto++ and this group is available at http://www.cryptopp.com. -~----------~----~----~----~------~----~------~--~---
