summaryrefslogtreecommitdiff
path: root/lib9/lock-MacOSX-power.s
blob: d5e15d4de9c9f750fbe160e18d2bc81e0674f13b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <architecture/ppc/asm_help.h>

LEAF(__tas)
	sync
	mr	r4,r3
	addi    r5,0,0x1
1:
	lwarx	r3,0,r4
	cmpwi   r3,0x0
	bne-    2f
	stwcx.	r5,0,r4
	bne-    1b		/* Lost reservation, try again */
2:
	sync
	blr
END(__tas)