--- /dev/null Sun Jun 21 11:00:58 2026 +++ /sys/src/ape/lib/ap/sparc/atom.c Sun Jun 21 00:00:00 2026 @@ -0,0 +1,30 @@ +#include "../plan9/lib.h" +#include "../plan9/sys9.h" + +extern int tas(int*); + +static int atomlock; + +long +ainc(long *p) +{ + long v; + + while(tas(&atomlock)) + ; + v = (*p += 1); + atomlock = 0; + return v; +} + +long +adec(long *p) +{ + long v; + + while(tas(&atomlock)) + ; + v = (*p -= 1); + atomlock = 0; + return v; +} --- /n/sources/plan9/sys/src/ape/lib/ap/sparc/mkfile Thu Sep 19 10:50:10 2013 +++ /sys/src/ape/lib/ap/sparc/mkfile Sun Jun 21 00:00:00 2026 @@ -2,7 +2,7 @@ <$APE/config LIB=/$objtype/lib/ape/libap.a OFILES=\ -# atom.$O\ + atom.$O\ cycles.$O\ lock.$O\ main9.$O\