> I've now got an answer to my question at
> Matthew Slattery says:
> > ..
> > 1. "PLT" is an ELF concept, but OS X uses a completely different
> > object / executable file format - Mach-O.
> > 2. Apple's |as| appears to be derived from a fork of a much earlier
> > version of the GNU assembler, and, in some places, the syntax
> > ..
> > It looks like there has been some work on i386 and x86-64 Mach-O
> > support quite recently in binutils
That's good to hear!
> > investigating the most recent version (2.21). But if the generated
> > assembly code is trying to do clever things which are ELF-specific,
> > you're probably going to have some major problems anyway...
I'm not sure if this is the case. That '@plt' stuff surely has to do
with the way code relocation is handled in ELF. So it might not be
helpful here. But, again, I'm not sure, it might be worth to try it.
Perhaps we should better investigate the Mach-O format? With that I mean
not actually analyzing the format, but the ways to generate it.
What helps in such cases is usually writing code snippets in C, compile
them to assembly code (the "-S" option to gcc), and study that.
Then we might be able to write a different code-generator for Mac OS, or
(perhaps. better) a post-processor.