ack/mach/sun3/libsys/sbrk.s

42 lines
589 B
ArmAsm
Raw Normal View History

1987-02-20 14:36:01 +00:00
#include "syscall.h"
.sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.define _sbrk,_brk
_sbrk:
move.l (4,sp),d0
add.l #3,d0
move.l #~3,d1
and.l d1,d0
move.l d0,a0
move.l (curbrk),d0
add.l #3,d0
and.l d1,d0
move.l d0,(curbrk)
add.l d0,a0
move.l a0,(4,sp)
pea (17) ! not SYS_sbrk
trap #0
bcs 1f
move.l (curbrk),d0
move.l (4,sp),(curbrk)
rts
1:
jmp (cerror)
_brk:
move.l (4,sp),d0
add.l #3,d0
move.l #~3,d1
and.l d1,d0
move.l d0,(4,sp)
pea (17)
trap #0
bcs 1f
move.l (4,sp),(curbrk)
clr.l d0
rts
1:
jmp (cerror)
.sect .data
curbrk: .data4 endbss