1/*#define XADDL(s,d) BYTE $0x0F; BYTE $0xC1; BYTE $((0<<6)|(s<<3)|(d))*/ 2 3/*TEXT xadd(SB),$0 /* long xadd(long *, long); */ 4 5/* MOVL l+0(FP),BX 6/* MOVL i+4(FP),AX 7/* LOCK 8/* XADDL(0,3) 9/* RET 10*/ 11 12TEXT _xinc(SB),$0 /* void _xinc(long *); */ 13 14 MOVL l+0(FP),AX 15 LOCK 16 INCL 0(AX) 17 RET 18 19TEXT _xdec(SB),$0 /* long _xdec(long *); */ 20 21 MOVL l+0(FP),AX 22 LOCK 23 DECL 0(AX) 24 JZ iszero 25 MOVL $1, AX 26 RET 27iszero: 28 MOVL $0, AX 29 RET 30