gcc 4.1 implements compiler builtins for atomic ops
Benjamin Herrenschmidt
benh@kernel.crashing.org
Sun Jun 26 23:48:00 GMT 2005
On Sun, 2005-06-26 at 16:38 -0700, Ulrich Drepper wrote:
> Benjamin Herrenschmidt wrote:
> > Yes, but that encourage developers to use them direcltly, which means
> > that they'll, for example, produce code that will either be broken for
> > 405 or will have a spurrious sync on non-405 which is a significant
> > performance issue.
>
> So what? This is an issue for binaries. How many binaries are shared
> between reasonable implementations and the broken ones? Don't generate
> the sync op by default and tell the losers who use the broken processors
> to throw them out or build their own binaries. You can even invent a
> mechanism to check for binaries compiled this way.
>
> And go, beat up the processor people. They cause the problems. We
> cannot have everybody else suffer from that. We have the APIs for all
> kinds of processors and every arch which needs to be treated special
> will fall aside since the extra handling is not acceptable to most
> programmers.
Which is exactly why I don't want these to be in the compiler. A library
would be just fine. In fact, I wanted to expose that from the vDSO once
we have sorted out how glibc uses vDSO functions on non-vsyscall setups
like ppc, so the kernel can just expose the right implementation for a
given processor.
Ben.
More information about the Libc-alpha
mailing list