Update.
[glibc.git] / sysdeps / ia64 / sysdep.h
blob83d30a49bf3eae0c7329b460e7575d42f23bef71
1 /* Copyright (C) 2000 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
3 Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, write to the Free
17 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18 02111-1307 USA. */
20 #include <sysdeps/generic/sysdep.h>
22 #ifdef __ASSEMBLER__
24 /* Macros to help writing .prologue directives in assembly code. */
25 #define ASM_UNW_PRLG_RP 0x8
26 #define ASM_UNW_PRLG_PFS 0x4
27 #define ASM_UNW_PRLG_PSP 0x2
28 #define ASM_UNW_PRLG_PR 0x1
29 #define ASM_UNW_PRLG_GRSAVE(ninputs) (32+(ninputs))
31 #define ENTRY(name) \
32 .text; \
33 .align 32; \
34 .proc C_SYMBOL_NAME(name); \
35 .global C_SYMBOL_NAME(name); \
36 C_LABEL(name) \
37 CALL_MCOUNT
39 #define LOCAL_ENTRY(name) \
40 .text; \
41 .align 32; \
42 .proc C_SYMBOL_NAME(name); \
43 C_LABEL(name) \
44 CALL_MCOUNT
46 #define LEAF(name) \
47 .text; \
48 .align 32; \
49 .proc C_SYMBOL_NAME(name); \
50 .global name; \
51 C_LABEL(name)
53 #define LOCAL_LEAF(name) \
54 .text; \
55 .align 32; \
56 .proc C_SYMBOL_NAME(name); \
57 C_LABEL(name)
59 /* Mark the end of function SYM. */
60 #undef END
61 #define END(sym) .endp C_SYMBOL_NAME(sym)
63 #endif /* ASSEMBLER */