diff options
author | Andrew Pinski <pinskia@physics.uc.edu> | 2003-12-25 02:04:06 +0000 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2003-12-24 18:04:06 -0800 |
commit | a51c409779289f065ed208581ec67b3d3fac0de5 (patch) | |
tree | 658fd183c73265e1eb13428ece1e5efd19af9235 /libstdc++-v3 | |
parent | 015fde0ae552f0902dceab263e1fcee069248524 (diff) | |
download | gcc-a51c409779289f065ed208581ec67b3d3fac0de5.zip gcc-a51c409779289f065ed208581ec67b3d3fac0de5.tar.gz gcc-a51c409779289f065ed208581ec67b3d3fac0de5.tar.bz2 |
re PR libstdc++/13480 (bits/atomicity.h:56: warning: read-write constraint does not allow a register)
2003-12-24 Andrew Pinski <pinskia@physics.uc.edu>
PR libstdc++/13480
* config/cpu/i486/atomicity.h: Split up read-write memory operand.
From-SVN: r75016
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/config/cpu/i386/atomicity.h | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 9c8048d..27b3a4b 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2003-12-24 Andrew Pinski <pinskia@physics.uc.edu> + + PR libstdc++/13480 + * config/cpu/i486/atomicity.h: Split up read-write memory operand. + 2003-12-23 Benjamin Kosnik <bkoz@redhat.com> * include/ext/new_allocator.h (new_allocator): Proper allocator class. diff --git a/libstdc++-v3/config/cpu/i386/atomicity.h b/libstdc++-v3/config/cpu/i386/atomicity.h index 70d38fe..8905d78 100644 --- a/libstdc++-v3/config/cpu/i386/atomicity.h +++ b/libstdc++-v3/config/cpu/i386/atomicity.h @@ -52,8 +52,9 @@ __exchange_and_add(volatile _Atomic_word* __mem, int __val) /* obtain the atomic exchange/add spin lock */ do { __asm__ __volatile__ ("xchg{l} {%0,%1|%1,%0}" - : "+m" (__Atomicity_lock<0>::_S_atomicity_lock), - "+r" (__tmp)); + : "m" (__Atomicity_lock<0>::_S_atomicity_lock), + "+r" (__tmp) + : "m" (__Atomicity_lock<0>::_S_atomicity_lock)); } while (__tmp); __result = *__mem; |