Add the DragonFly cvs id and perform general cleanups on cvs/rcs/sccs ids. Most
[dragonfly.git] / lib / libcr / alpha / sys / cerror.S
1 /* $FreeBSD: src/lib/libc/alpha/sys/cerror.S,v 1.5 1999/08/27 23:58:11 peter Exp $      */
2 /* $DragonFly: src/lib/libcr/alpha/sys/Attic/cerror.S,v 1.2 2003/06/17 04:26:41 dillon Exp $    */
3 /*      From: NetBSD: cerror.S,v 1.4 1996/11/08 00:52:46 cgd Exp        */
4
5 /*
6  * Copyright (c) 1994, 1995 Carnegie-Mellon University.
7  * All rights reserved.
8  *
9  * Author: Chris G. Demetriou
10  * 
11  * Permission to use, copy, modify and distribute this software and
12  * its documentation is hereby granted, provided that both the copyright
13  * notice and this permission notice appear in all copies of the
14  * software, derivative works or modified versions, and any portions
15  * thereof, and that both notices appear in supporting documentation.
16  * 
17  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" 
18  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND 
19  * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
20  * 
21  * Carnegie Mellon requests users of this software to return to
22  *
23  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
24  *  School of Computer Science
25  *  Carnegie Mellon University
26  *  Pittsburgh PA 15213-3890
27  *
28  * any improvements or extensions that they make and grant Carnegie the
29  * rights to redistribute these changes.
30  */
31
32 #include "SYS.h"
33
34 #define FRAME_SIZE              16
35 #define FRAME_RA_OFFSET         0
36 #define FRAME_V0_OFFSET         8
37
38 NESTED(.cerror, 0, FRAME_SIZE, ra, IM_RA|IM_V0, 0)
39         br      t0, L1
40 L1:     LDGP(t0)
41
42         lda     sp, -FRAME_SIZE(sp)
43         stq     ra, FRAME_RA_OFFSET(sp)
44         stq     v0, FRAME_V0_OFFSET(sp)
45
46         CALL(__error)
47
48         ldq     t0, FRAME_V0_OFFSET(sp)
49         stl     t0, 0(v0)
50
51         ldiq    v0, -1
52         ldq     ra, FRAME_RA_OFFSET(sp)
53         lda     sp, FRAME_SIZE(sp)
54         RET
55 END(.cerror)