Subversion Repositories planix.SVN

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 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
 
12
TEXT	_xinc(SB),$0	/* void _xinc(long *); */
13
 
14
	MOVL	l+0(FP),AX
15
	LOCK
16
	INCL	0(AX)
17
	RET
18
 
19
TEXT	_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
27
iszero:
28
	MOVL	$0, AX
29
	RET