glib CVS HEAD does not compile on powerpc (gatomic asm problem)

On my G3 I get

gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_ENABLE_DEBUG -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -Wall -mcpu=750 -pipe -MT gatomic.lo -MD -MP -MF .deps/gatomic.Tpo -c gatomic.c -fPIC -DPIC -o .libs/gatomic.o
gatomic.c: In function `g_atomic_int_exchange_and_add':
gatomic.c:274: error: inconsistent operand constraints in an `asm'

But I'm too ignorant of powerpc asm magic to fix it myself.


PS: The code in question is
  __asm __volatile ("1:       lwarx   %0,0,%3\n"
                    "         add     %1,%0,%4\n"
                    "         stwcx.  %1,0,%3\n"
                    "         bne-    1b"
                    : "=&b" (result), "=&r" (temp), "=m" (*atomic)
                    : "b" (atomic), "r" (val), "2" (*atomic)
                    : "cr0", "memory");

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]