Home | History | Annotate | Line # | Download | only in sys
brk.S revision 1.6.2.1
      1  1.6.2.1  kleink /* $NetBSD: brk.S,v 1.6.2.1 2000/08/21 17:35:01 kleink Exp $ */
      2      1.1     cgd 
      3      1.1     cgd /*
      4      1.1     cgd  * Copyright (c) 1994, 1995 Carnegie-Mellon University.
      5      1.1     cgd  * All rights reserved.
      6      1.1     cgd  *
      7      1.1     cgd  * Author: Chris G. Demetriou
      8      1.1     cgd  *
      9      1.1     cgd  * Permission to use, copy, modify and distribute this software and
     10      1.1     cgd  * its documentation is hereby granted, provided that both the copyright
     11      1.1     cgd  * notice and this permission notice appear in all copies of the
     12      1.1     cgd  * software, derivative works or modified versions, and any portions
     13      1.1     cgd  * thereof, and that both notices appear in supporting documentation.
     14      1.1     cgd  *
     15      1.1     cgd  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
     16      1.1     cgd  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
     17      1.1     cgd  * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
     18      1.1     cgd  *
     19      1.1     cgd  * Carnegie Mellon requests users of this software to return to
     20      1.1     cgd  *
     21      1.1     cgd  *  Software Distribution Coordinator  or  Software.Distribution (at) CS.CMU.EDU
     22      1.1     cgd  *  School of Computer Science
     23      1.1     cgd  *  Carnegie Mellon University
     24      1.1     cgd  *  Pittsburgh PA 15213-3890
     25      1.1     cgd  *
     26      1.1     cgd  * any improvements or extensions that they make and grant Carnegie the
     27      1.1     cgd  * rights to redistribute these changes.
     28      1.1     cgd  */
     29      1.1     cgd 
     30      1.1     cgd #include "SYS.h"
     31      1.1     cgd 
     32      1.1     cgd 	.globl	_end
     33      1.5  kleink IMPORT(__curbrk, 8)
     34      1.1     cgd 
     35  1.6.2.1  kleink #ifdef WEAK_ALIAS
     36  1.6.2.1  kleink WEAK_ALIAS(brk, _brk)
     37  1.6.2.1  kleink #endif
     38  1.6.2.1  kleink 
     39      1.1     cgd 	.data
     40      1.5  kleink EXPORT(__minbrk)
     41      1.1     cgd 	.quad	_end
     42      1.1     cgd 
     43      1.1     cgd 	.text
     44  1.6.2.1  kleink LEAF(_brk, 1)
     45      1.3     cgd 	br	pv, L1				/* XXX profiling */
     46      1.4     cgd L1:	LDGP(pv)
     47      1.5  kleink 	ldq	v0, __minbrk
     48      1.1     cgd 	cmpult  a0, v0, t0
     49      1.1     cgd 	cmovne  t0, v0, a0
     50      1.4     cgd 	CALLSYS_ERROR(break)
     51      1.5  kleink 	stq	a0, __curbrk
     52      1.1     cgd 	mov	zero, v0
     53      1.1     cgd 	RET
     54      1.1     cgd END(brk)
     55