http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37651
Andrew Haley aph at gcc dot gnu.org changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
--- Comment #1 from pinskia at gcc dot gnu dot org 2008-09-25 21:36 ---
I get:
xchgl %ebx, %edi
lock ; cmpxchg8b(%esi)
xchgl %ebx, %edi
Which looks good.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37651
--- Comment #2 from brian at dessent dot net 2008-09-25 22:29 ---
Subject: Re: __sync_bool_compare_and_swap creates wrong code
with -fPIC
You get that if the variable is auto, but if it's static the reference
is with a GOTOFF reloc:
xorl%edi, %edi
pushl %ebx