xref: /original-bsd/lib/libc/tahoe/DEFS.h (revision 9a77813a)
1 /*
2  * Copyright (c) 1988 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms are permitted
6  * provided that the above copyright notice and this paragraph are
7  * duplicated in all such forms and that any documentation,
8  * advertising materials, and other materials related to such
9  * distribution and use acknowledge that the software was developed
10  * by the University of California, Berkeley.  The name of the
11  * University may not be used to endorse or promote products derived
12  * from this software without specific prior written permission.
13  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16  *
17  *	@(#)DEFS.h	5.4 (Berkeley) 09/22/88
18  */
19 
20 /*
21  * Macros used to define entry points
22  * in assembly language routines.
23  */
24 #if defined(GPROF) || defined(PROF)
25 #define	ENTRY(name, regs) \
26 	.globl _/**/name; .align 2; _/**/name: .word regs; \
27 	.data; .align 2; 1: .long 0; .text; \
28 	pushal 1b; callf $8,mcount;
29 #define	ASENTRY(name, regs) \
30 	.globl name; .align 2; name: .word regs; \
31 	.data; .align 2; 1: .long 0; .text; \
32 	pushal 1b; callf $8,mcount;
33 #define	XENTRY(name, regs) \
34 	.globl _/**/name; .globl X/**/name; .align 2; \
35 	_/**/name: X/**/name: .word regs; \
36 	.data; .align 2; 1: .long 0; .text; \
37 	pushal 1b; callf $8,mcount
38 #else
39 #define	ENTRY(name, regs) \
40 	.globl _/**/name; .align 2; _/**/name: .word regs
41 #define	ASENTRY(name, regs) \
42 	.globl name; .align 2; name: .word regs
43 #define	XENTRY(name, regs) \
44 	.globl _/**/name; .globl X/**/name; .align 2; \
45 	_/**/name: X/**/name: .word regs;
46 #endif
47 #define R0	0x0001
48 #define R1	0x0002
49 #define R2	0x0004
50 #define R3	0x0008
51 #define R4	0x0010
52 #define R5	0x0020
53 #define R6	0x0040
54 #define	R7	0x0080
55 #define	R8	0x0100
56 #define	R9	0x0200
57 #define	R10	0x0400
58 #define	R11	0x0800
59 #define	R12	0x1000
60