I tried to compile Crypto++ under OS X Yosemite with assembly enabled, and got tons of incomprehensible compilation errors. Some of the earlier posts had me believe that it was the fault of the outdated assembler which comes with OS X, so I reported it as a potential bug to Apple. After several conversions, they replied that
This issue behaves as intended based on the following: > > The problem here is that the integrated assembler is more strict than gas(1) > or as(1) on operand sizes. The "rdi" reference here is not valid for a MOVD > instruction, with requires a 32-bit GPR register. Depending on what was > intended by the code, either "movd edi, xmm0" or "movq rdi, xmm0" will be a > correct fix. > > That is, this is a project bug that the compiler is correctly diagnosing. > Previous assemblers incorrectly did not issue an error here. > > The diagnostic, however, is downright terrible with the huge blob of inline > asm all being on one line like that. We will work on fixing that. > > > For example, in the source of gcm.cpp expanded by the preprocessor, there are codes like "psrldq xmm0" ", " "15" ";" > "movd rdi" ", " "xmm0" ";" > "movzx eax" ", " "WORD PTR [r10 + rdi*2]" ";" > "shl eax" ", " "8" ";" Will these be fixed in future revisions? -- -- 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. --- You received this message because you are subscribed to the Google Groups "Crypto++ Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
