Andrew Thomas Pinski wrote:
On Aug 27, 2008, at 0:27, Jay <[EMAIL PROTECTED]> wrote:

        size = getpagesize();                          \
        mask = ~((long) size - 1);

Or even better store size after the store to mask.
That is:
int tmp = getpagesize();
*(volatile*)&mask = ~((long)tmp - 1);
*(volatile*)&size = tmp;

Does this work on machines that support out-of-order
execution? For example, shouldn't there be the
equivalent of a powerpc eieio to ensure that the
stores *happen* in order?

I'm assuming, of course, that Darwin runs on different
processor architectures.

Reply via email to