On 12/01/2011 10:49 AM, Richard Henderson wrote:
On 12/01/2011 02:59 AM, Richard Earnshaw wrote:
It's essential we don't emit SWP instructions directly into code on any
platform where that code may possibly be run on a later core that has
LDREX/STREX. If we do that we'll end up with a mess that can't be resolved.
Ok. It's easy enough to drop that patch.
I also think that GCC should NOT provide those helper functions, though
we should probably write a document describing how a user might do so.
I'll refer you to MacLeod at this point and the atomics support library...
What helper functions? the __atomic_* ones when lock free routines
cannot be provided? they are defined here:
http://gcc.gnu.org/wiki/Atomic/GCCMM/LIbrary
and recently I tried starting a discussion on its future:
http://gcc.gnu.org/ml/gcc/2011-11/msg00503.html
follow up any opinions there I guess :-)
Andrew