30 lines
330 B
ArmAsm
30 lines
330 B
ArmAsm
#include "syscall.h"
|
|
.globl _end
|
|
DEFINE(_brk)
|
|
cmpl 4(ap),min
|
|
bgeq ok
|
|
movl min,4(ap)
|
|
ok:
|
|
chmk $17
|
|
bcs err
|
|
movl 4(ap),cur
|
|
clrl r0
|
|
ret
|
|
err:
|
|
jmp cerror
|
|
|
|
DEFINE(_sbrk)
|
|
addl3 cur,4(ap),-(sp)
|
|
bcs err
|
|
pushl $1
|
|
movl ap,r3
|
|
movl sp,ap
|
|
chmk $17
|
|
bcs err
|
|
movl cur,r0
|
|
addl2 4(r3),cur
|
|
ret
|
|
.data
|
|
min: .long _end
|
|
cur: .long _end
|