135671Sbostic /* 2*61181Sbostic * Copyright (c) 1988, 1993 3*61181Sbostic * The Regents of the University of California. All rights reserved. 435671Sbostic * 542635Sbostic * %sccs.include.redist.c% 635671Sbostic * 7*61181Sbostic * @(#)DEFS.h 8.1 (Berkeley) 06/04/93 835671Sbostic */ 929703Ssam 1029703Ssam /* 1129703Ssam * Macros used to define entry points 1229703Ssam * in assembly language routines. 1329703Ssam */ 1429703Ssam #if defined(GPROF) || defined(PROF) 1529703Ssam #define ENTRY(name, regs) \ 1629711Ssam .globl _/**/name; .align 2; _/**/name: .word regs; \ 1729711Ssam .data; .align 2; 1: .long 0; .text; \ 1829711Ssam pushal 1b; callf $8,mcount; 1929703Ssam #define ASENTRY(name, regs) \ 2029711Ssam .globl name; .align 2; name: .word regs; \ 2129711Ssam .data; .align 2; 1: .long 0; .text; \ 2229711Ssam pushal 1b; callf $8,mcount; 2329708Ssam #define XENTRY(name, regs) \ 2429708Ssam .globl _/**/name; .globl X/**/name; .align 2; \ 2529711Ssam _/**/name: X/**/name: .word regs; \ 2629711Ssam .data; .align 2; 1: .long 0; .text; \ 2729711Ssam pushal 1b; callf $8,mcount 2829703Ssam #else 2929703Ssam #define ENTRY(name, regs) \ 3029703Ssam .globl _/**/name; .align 2; _/**/name: .word regs 3129703Ssam #define ASENTRY(name, regs) \ 3229703Ssam .globl name; .align 2; name: .word regs 3329708Ssam #define XENTRY(name, regs) \ 3429708Ssam .globl _/**/name; .globl X/**/name; .align 2; \ 3529708Ssam _/**/name: X/**/name: .word regs; 3629703Ssam #endif 3729703Ssam #define R0 0x0001 3829703Ssam #define R1 0x0002 3929703Ssam #define R2 0x0004 4029703Ssam #define R3 0x0008 4129703Ssam #define R4 0x0010 4229703Ssam #define R5 0x0020 4329703Ssam #define R6 0x0040 4429703Ssam #define R7 0x0080 4529703Ssam #define R8 0x0100 4629703Ssam #define R9 0x0200 4729703Ssam #define R10 0x0400 4829703Ssam #define R11 0x0800 4929703Ssam #define R12 0x1000 50