On May 5, 9:31 am, MMoadeli <[email protected]> wrote: > Hi Jeffery, > > Many thanks for the reply. > With your advised compiler directives I got similar errors. I tried > both gcc-4.4 and gcc-4.6. > Actually, the errors are the result of compiling gcm.cpp. Following > are the errors generated as the result of using different compiler > directives. OK. I had a little more time to look at this.
According to Intel (perhaps GCC would be a better source???), pclmulqdq is part of AVX and available in GCC 4.6, not GCC 4.4. See http://software.intel.com/en-us/avx/ and http://software.intel.com/en-us/articles/intel-software-development-emulator/. Intel's Software Development Emulator page has a Q and A that makes it clear. GCC 4.6 begs the question, why "no such instruction"? That could be either a header problem, or a cross-compile issue. I believe the correct header is included, so I'm leaning towards a cross-compile issue. I suspect the AVX test on the Core2 is failing (Core2 does not have AVX), so the instruction is left undefined. See http://old.nabble.com/PATCH:-Support-Intel-AVX-Programming-Reference-(January,-2009)-td21833586.html. Jeff > --------------------------- > 1- Using advised directives > > MyMacOSX>c++ -m64 -mtune=core2 -g3 -ggdb -DDEBUG -O0 - > DCRYPTOPP_DISABLE_ASM -pipe -c gcm.cpp > > cpu.h:53:no such instruction: `pclmulqdq $16, -368(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $0, -224(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $0, -208(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $16, -160(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $1, -112(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $17, -32(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $0, -1344(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $1, -1264(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $0, -1152(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $1, -1024(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $1, -944(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $1, -832(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $16, -672(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $17, -592(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $16, -480(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $16, -352(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $16, -272(%rbp),%xmm0' > cpu.h:53:no such instruction: `pclmulqdq $16, -160(%rbp),%xmm0' > > -------------------------- > 2- Other variations, -pipe doesn't affect > > MyMacOSX> c++ -m64 -mtune=core2 -g3 -ggdb -DDEBUG -O0 -mpclmul -maes - > DCRYPTOPP_DISABLE_ASM -c gcm.cpp > :3422:no such instruction: `pclmulqdq $16, %xmm1,%xmm0' > :3472:no such instruction: `pclmulqdq $0, %xmm1,%xmm0' > :3581:no such instruction: `pclmulqdq $0, %xmm1,%xmm0' > :3588:no such instruction: `pclmulqdq $16, %xmm1,%xmm0' > :3593:no such instruction: `pclmulqdq $1, %xmm2,%xmm1' > :3611:no such instruction: `pclmulqdq $17, %xmm1,%xmm0' > :52:no such instruction: `pclmulqdq $0, %xmm1,%xmm0' > :69:no such instruction: `pclmulqdq $1, %xmm1,%xmm0' > :102:no such instruction: `pclmulqdq $0, %xmm1,%xmm0' > :38:no such instruction: `pclmulqdq $1, %xmm1,%xmm0' > :55:no such instruction: `pclmulqdq $1, %xmm1,%xmm0' > :86:no such instruction: `pclmulqdq $1, %xmm1,%xmm0' > :52:no such instruction: `pclmulqdq $16, %xmm1,%xmm0' > :69:no such instruction: `pclmulqdq $17, %xmm1,%xmm0' > :102:no such instruction: `pclmulqdq $16, %xmm1,%xmm0' > :38:no such instruction: `pclmulqdq $16, %xmm1,%xmm0' > :55:no such instruction: `pclmulqdq $16, %xmm1,%xmm0' > :86:no such instruction: `pclmulqdq $16, %xmm1,%xmm0' > --------------------------------------------------------------------------- > ----------- > > [SNIP] -- 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.
