]> git.lizzy.rs Git - plan9front.git/blob - sys/src/libthread/xincalpha.s
merge
[plan9front.git] / sys / src / libthread / xincalpha.s
1 TEXT    _xdec(SB), $-8
2         MOVQ    R0, R1          /* p */
3 dec1:
4         MOVLL   (R1), R0                /* *p */
5         SUBL            $1, R0
6         MOVQ    R0, R2
7         MOVLC   R2, (R1)                /* --(*p) */
8         BEQ             R2, dec1                /* write failed, retry */
9         RET
10
11 TEXT    _xinc(SB), $-8
12         MOVQ    R0, R1          /* p */
13 inc1:
14         MOVLL   (R1), R0                /* *p */
15         ADDL    $1, R0
16         MOVLC   R0, (R1)                /* (*p)++ */
17         BEQ             R0, inc1                /* write failed, retry */
18         RET
19