1: /old = sbrk(increment);
2: /
3: /sbrk gets increment more core, and returns a pointer
4: / to the beginning of the new core area
5: /
6: .globl _sbrk, _brk
7: .globl _end, cerror
8: .break = 17.
9:
10: _sbrk:
11: mov r5,-(sp)
12: mov sp,r5
13: mov 4(r5),0f
14: beq 1f
15: add nd,0f
16: sys 0; 9f
17: bec 1f
18: jmp cerror
19: 1:
20: mov nd,r0
21: add 4(r5),nd
22: mov (sp)+,r5
23: rts pc
24:
25: / brk(value)
26: / as described in man2.
27: / returns 0 for ok, -1 for error.
28:
29: _brk:
30: mov r5,-(sp)
31: mov sp,r5
32: mov 4(r5),0f
33: sys 0; 9f
34: bec 1f
35: jmp cerror
36: 1:
37: mov 4(r5),nd
38: clr r0
39: mov (sp)+,r5
40: rts pc
41:
42: .data
43: 9:
44: sys .break; 0:..
45: nd: _end
Defined functions
.break
defined in line
8; used 1 times
_brk
declared in line
6; defined in line
29; used 4 times
_sbrk
declared in line
6; defined in line
10; used 40 times
Defined variables
nd
defined in line
45; used 4 times