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.

Reply via email to