Apple's assembler

David Liontooth liontooth at cogweb.net
Fri May 11 17:50:28 PDT 2007


In packaging transcode for macports, Chuck Remes noticed Apple's
assembler is based on an outdated GNU assembler that doesn't support all
the modern MMX, SSE2, SSE3, etc. extensions in open source applications.

On OSX I have this:

    $ as -v
    Apple Computer, Inc. version cctools-622.5.obj~13, GNU assembler
    version 1.38

In contrast, Debian sid uses:

    # as -v
    GNU assembler version 2.17.50 (x86_64-linux-gnu) using BFD version
    (GNU Binutils for Debian) 2.17.50.20070426

The assembler is part of the binutils package, which is ported, but gas,
the GNU assembler, is left out.

Of course the Apple assembler supports all the modern extensions in
their own software, but after GNU v1.28, Apple made the decision to move
these binaries into their 'Accelerate framework'
(http://developer.apple.com/performance/accelerateframework.html) -- as
far as I understand as a part of their incremental moves to close the
Darwin source.

In the short run, and perhaps the long, this likely means we're not
going to see free software's assembly code compile at all on OSX.

Views?

Dave





More information about the macports-users mailing list