185518Sjake/*
285518Sjake * Copyright (c) 1992, 1993
385518Sjake *	The Regents of the University of California.  All rights reserved.
485518Sjake *
585518Sjake * This software was developed by the Computer Systems Engineering group
685518Sjake * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
785518Sjake * contributed to Berkeley.
885518Sjake *
985518Sjake * Redistribution and use in source and binary forms, with or without
1085518Sjake * modification, are permitted provided that the following conditions
1185518Sjake * are met:
1285518Sjake * 1. Redistributions of source code must retain the above copyright
1385518Sjake *    notice, this list of conditions and the following disclaimer.
1485518Sjake * 2. Redistributions in binary form must reproduce the above copyright
1585518Sjake *    notice, this list of conditions and the following disclaimer in the
1685518Sjake *    documentation and/or other materials provided with the distribution.
1785518Sjake * 4. Neither the name of the University nor the names of its contributors
1885518Sjake *    may be used to endorse or promote products derived from this software
1985518Sjake *    without specific prior written permission.
2085518Sjake *
2185518Sjake * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
2285518Sjake * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2385518Sjake * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2485518Sjake * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2585518Sjake * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2685518Sjake * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2785518Sjake * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2885518Sjake * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2985518Sjake * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
3085518Sjake * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
3185518Sjake * SUCH DAMAGE.
3285518Sjake *
3385518Sjake * from: Header: brk.s,v 1.3 92/06/25 12:56:05 mccanne Exp
3485518Sjake */
3585518Sjake
3685518Sjake#if defined(SYSLIBC_SCCS) && !defined(lint)
3799116Sobrien	.asciz "@(#)brk.s	8.1 (Berkeley) 6/4/93"
3885518Sjake#if 0
3985518Sjake	RCSID("$NetBSD: brk.S,v 1.9 2000/07/25 20:15:40 mycroft Exp $")
4085518Sjake#endif
4185518Sjake#endif /* SYSLIBC_SCCS and not lint */
4299116Sobrien#include <machine/asm.h>
4399116Sobrien__FBSDID("$FreeBSD$");
4485518Sjake
4585518Sjake#include "SYS.h"
4685518Sjake
4785518Sjake	.globl	HIDENAME(curbrk)
4885518Sjake	.globl	HIDENAME(minbrk)
4985518Sjake
5085518Sjake_SYSENTRY(brk)
5185518Sjake	PIC_PROLOGUE(%o3, %o2)
5285518Sjake	SET(HIDENAME(minbrk), %o2, %o3)
5385518Sjake	ldx	[%o3], %o4
5485518Sjake	cmp	%o4, %o0
5585518Sjake	movg	%xcc, %o4, %o0
5685518Sjake	mov	%o0, %o4
5785518Sjake	mov	SYS_break, %g1
5885518Sjake	ta	%xcc, ST_SYSCALL
5985518Sjake	bcc,a,pt %xcc, 1f
6085518Sjake	 nop
6185518Sjake	ERROR()
6285518Sjake1:	SET(HIDENAME(curbrk), %o2, %o3)
6385518Sjake	retl
6485518Sjake	 stx	%o4, [%o3]
6586536Sjake_SYSEND(brk)
66