Mon Aug 7 09:10:57 CEST 2006
On Sun, 6 Aug 2006 22:28:30 +0100, Joel Reymont wrote:
> On Aug 6, 2006, at 10:11 PM, Mikael Pettersson wrote:
> > Unless you have the source code for the OSX C library, you basically
> > have to run 'nm' on the library files to find all versions of
> > sigaction(),
> > and then experiment with defining sigaction() as a wrapper around
> > those
> > C-library internal sigaction() functions until you find a combination
> > that works. Disassembling parts of the library may also be necessary.
> Isn't there HiPE for Mac OSX PPC? I'm almost positive there is.
Yes, HiPE/ppc32 supports both Linux and OSX.
> there's HiPE for Mac OSX then the sigaction bits would have already
> been taken care of, no?
No. Only x86/amd64 needs the sigaltstack semantics; neither SPARC,
ppc32, nor ARM needs it. (ARM could use it to free up a register,
but the small performance improvement from that would likely be
cancelled by higher BIF call costs, and of course more implementation
complexity, so I haven't bothered trying that yet.)
> The operating system did not change, the
> processor architecture did.
And that makes a world of difference. x86/amd64 is very very different
from run-of-the-mill RISCs due to (a) few registers in the visible
instruction set, and (b) that the return stack branch predictor only
is effective when call/ret are used. M68K would have similar issues,
if it there were any viable modern implementations of it.
More information about the erlang-questions