OK. Cut-n-pasted what you wrote into tas.s and got farther make[1]: Leaving directory `/home/gp/drawterm/posix-power' gcc -pthread -o drawterm main.o cpu.o readcons.o secstore.o latin1.o posix-factotum.o kern/libkern.a exportfs/libexportfs.a libauth/libauth.a libauthsrv/libauthsrv.a libsec/libsec.a libmp/libmp.a libmemdraw/libmemdraw.a libmemlayer/libmemlayer.a libdraw/libdraw.a gui-x11/libgui.a libc/libc.a kern/libkern.a exportfs/libexportfs.a libauth/libauth.a libauthsrv/libauthsrv.a libsec/libsec.a libmp/libmp.a libmemdraw/libmemdraw.a libmemlayer/libmemlayer.a libdraw/libdraw.a gui-x11/libgui.a libc/libc.a kern/libkern.a exportfs/libexportfs.a libauth/libauth.a libauthsrv/libauthsrv.a libsec/libsec.a libmp/libmp.a libmemdraw/libmemdraw.a libmemlayer/libmemlayer.a libdraw/libdraw.a gui-x11/libgui.a libc/libc.a libmachdep.a -L/usr/X11R6/lib -lX11 -ggdb kern/libkern.a(devcons.o): In function `consopen': /home/gp/drawterm/kern/devcons.c:585: undefined reference to `tas' libc/libc.a(lock.o): In function `canlock': /home/gp/drawterm/libc/lock.c:7: undefined reference to `tas' collect2: ld returned 1 exit status make: *** [drawterm] Error 1
On Tue, 2006-01-17 at 16:40 -0500, Russ Cox wrote: > Try removing tas.c from drawterm/posix-power and create tas.s > instead: > > .globl _tas > _tas: > li %r0, 0 > mr %r4, %r3 > lis %r5, 0xcafe > ori %r5, %r5, 0xbabe > 1: > lwarx %r3, %r0, %r4 > cmpwi %r3, 0 > bne 2f > stwcx. %r5, %r0, %r4 > bne- 1b > 2: > sync > blr > > Russ
