+2003-06-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libstdc++/9815
+ * config/cpu/i386/atomicity.h (__exchange_and_add): add intel
+ asm case to asm.
+ * config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
+ (__atomic_add): likewise.
+
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (pbackfail): Minor clean up and
2003-05-27 Jonathan Wakely <redi@gcc.gnu.org>
- * include/std/std_istream.h, include/std/std_ostream.h: Typo in comment.
+ * include/std/std_istream.h, include/std/std_ostream.h: Typo in
+ comment.
2003-05-26 Benjamin Kosnik <bkoz@redhat.com>
/* obtain the atomic exchange/add spin lock */
do {
- __asm__ __volatile__ ("xchgl %0,%1"
+ __asm__ __volatile__ ("xchg{l} {%0,%1|%1,%0}"
: "+m" (__Atomicity_lock<0>::_S_atomicity_lock),
"+r" (__tmp));
} while (__tmp);
__exchange_and_add (volatile _Atomic_word *__mem, int __val)
{
register _Atomic_word __result;
- __asm__ __volatile__ ("lock; xaddl %0,%1"
+ __asm__ __volatile__ ("lock; xadd{l} {%0,%1|%1,%0}"
: "=r" (__result), "+m" (*__mem)
: "0" (__val)
: "memory");
__attribute__ ((__unused__))
__atomic_add (volatile _Atomic_word* __mem, int __val)
{
- __asm__ __volatile__ ("lock; addl %1,%0"
+ __asm__ __volatile__ ("lock; add{l} {%1,%0|%0,%1}"
: "+m" (*__mem) : "ir" (__val) : "memory");
}