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