On Tuesday, 2009-11-17, at 13:47 , Wei Dai wrote:
> That's because the assembler in Mac OS X is based on a very old
> version of GNU AS, which doesn't support .intel_syntax. The
> assembly code in Crypto++ is written in Intel syntax to be
> compatible with Microsoft compilers/assemblers.
It is indeed a very old version. It calls itself "v1.38". GNU AS
v1.38 was released so long ago that I can't figure out when it was.
It was released before 1996, and probably many years before 1996.
I think that Apple refuses to upgrade to the new GNU assembler
because the new one is under GPLv3 and Apple doesn't like that.
So, I don't know if or how this situation is ever going to be
improved. Apple will patch its ancient version of as to do the new
syntax? Wei Dai will write old-style-syntax variants of all his
assembly just for Mac OS X? Apple will give up and accept GPLv3-
licensed assembler? All Apple users will instead install some open
source operating system on their machines?
I guess what will happen is Crypto++ will continue to be much slower
on Mac OS X than on other systems. Maybe this doesn't matter in
practice. Just how slow is it? Slow enough that it diminishes your
battery life? Slow enough that it worsens the user experience?
Maybe someone who cares about this issue should write to Apple and
request that their assembler support Intel syntax.
Regards,
Zooko