r9191 (approximately Fri 3 March 06) does not build on ppc32-linux due to use of register names of the form "r9" etc in opal/include/opal/sys/powerpc/atomic.h, in opal_atomic_cmpset_64(). You must use either names of the form "%%r9" or just plain "9", or give gcc the flag -mregnames (iirc). The plain-digit convention is what the rest of the assembly fragments in that file use. My inelegant fix is below.
This is with SuSE 10.0 running on a Mac Mini. (glibc 2.3.5, gcc 4.0.2) Config args were --with-memory-manager=none --disable-mpi-f77 J Index: opal/include/opal/sys/powerpc/atomic.h =================================================================== --- opal/include/opal/sys/powerpc/atomic.h (revision 9191) +++ opal/include/opal/sys/powerpc/atomic.h (working copy) @@ -259,17 +259,17 @@ * is very similar to the pure 64 bit version. */ __asm__ __volatile__ ( - "ld r4,%2 \n\t" - "ld r5,%3 \n\t" - "1: ldarx r9, 0, %1 \n\t" - " cmpd 0, r9, r4 \n\t" + "ld %%r4,%2 \n\t" + "ld %%r5,%3 \n\t" + "1: ldarx %%r9, 0, %1 \n\t" + " cmpd 0, %%r9, %%r4 \n\t" " bne- 2f \n\t" - " stdcx. r5, 0, %1 \n\t" + " stdcx. %%r5, 0, %1 \n\t" " bne- 1b \n\t" "2: \n\t" - "xor r5,r4,r9 \n\t" - "subfic r9,r5,0 \n\t" - "adde %0,r9,r5 \n\t" + "xor %%r5,%%r4,%%r9 \n\t" + "subfic %%r9,%%r5,0 \n\t" + "adde %0,%%r9,%%r5 \n\t" : "=&r" (ret) : "r"(addr), "m"(oldval), "m"(newval)