patch applied (ghc-6.6/ghc): use " lock cmpxchg"
instead of " lock/cmpxchg"
simonmarhaskell at gmail.com
Tue Nov 21 06:25:11 EST 2006
Wolfgang Thaller wrote:
>> Fri Nov 17 03:44:29 PST 2006 Simon Marlow <simonmar at microsoft.com>
>> * use "lock cmpxchg" instead of "lock/cmpxchg"
>> I'm not sure where the latter version came from, but it apparently
>> doesn't generate a legal instruction on Solaris.
>> M ./includes/SMP.h -1 +1
> It came from Mac OS X.
>> Sun Mar 5 19:48:20 PST 2006 wolfgang.thaller at gmx.net
>> * Use Darwin-compatible x86 assembly syntax in SMP.h (lock/ cmpxchg
>> with a slash)
>> M ./ghc/includes/SMP.h -1 +1
> Apple's assembler doesn't accept the "lock cmpxchg" syntax, only
> "lock/cmpxchg" and "lock\ncmpxchg". So does that leave "lock \ncmpxchg",
> or is that a Mac-only thing, and we need #ifdefs?
Unfortunately, finding a version that works requires a 3-way synchronisation
between you, me and Christian Meader :-)
lock\ncmpxchg works here. Christian, does it work for you?
More information about the Cvs-ghc