xref: /csrg-svn/lib/libc/i386/sys/brk.s (revision 61135)
141013Swilliam/*-
2*61135Sbostic * Copyright (c) 1990, 1993
3*61135Sbostic *	The Regents of the University of California.  All rights reserved.
441013Swilliam *
541013Swilliam * This code is derived from software contributed to Berkeley by
641013Swilliam * William Jolitz.
741013Swilliam *
841013Swilliam * %sccs.include.redist.c%
941013Swilliam */
1041013Swilliam
1141013Swilliam#if defined(SYSLIBC_SCCS) && !defined(lint)
12*61135Sbostic	.asciz "@(#)brk.s	8.1 (Berkeley) 06/04/93"
1341013Swilliam#endif /* SYSLIBC_SCCS and not lint */
1441013Swilliam
1541013Swilliam#include "SYS.h"
1641013Swilliam
1741013Swilliam#define	SYS_brk		17
1841013Swilliam
1941013Swilliam	.globl	curbrk
2041013Swilliam	.globl	minbrk
2141013SwilliamENTRY(_brk)
2241013Swilliam	jmp	ok
2341013Swilliam
2441013SwilliamENTRY(brk)
2541013Swilliam	movl	4(%esp),%eax
2641013Swilliam	cmpl	%eax,minbrk
2745828Swilliam	jl	ok
2841013Swilliam	movl	minbrk,%eax
2941013Swilliam	movl	%eax,4(%esp)
3041013Swilliamok:
3141013Swilliam	lea	SYS_brk,%eax
3241013Swilliam	LCALL(7,0)
3341013Swilliam	jb	err
3441013Swilliam	movl	4(%esp),%eax
3541013Swilliam	movl	%eax,curbrk
3641013Swilliam	movl	$0,%eax
3741013Swilliam	ret
3841013Swilliamerr:
3941013Swilliam	jmp	cerror
40