Don't allow use when using _FILE_OFFSET_BITS=64.
[kopensolaris-gnu/glibc.git] / sysdeps / unix / sparc / sysdep.h
1 /* Copyright (C) 1993, 1994, 1995, 1997 Free Software Foundation, Inc.
2    This file is part of the GNU C Library.
3
4    The GNU C Library is free software; you can redistribute it and/or
5    modify it under the terms of the GNU Library General Public License as
6    published by the Free Software Foundation; either version 2 of the
7    License, or (at your option) any later version.
8
9    The GNU C Library is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12    Library General Public License for more details.
13
14    You should have received a copy of the GNU Library General Public
15    License along with the GNU C Library; see the file COPYING.LIB.  If not,
16    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17    Boston, MA 02111-1307, USA.  */
18
19 #include <sysdeps/unix/sysdep.h>
20
21 #ifdef  __ASSEMBLER__
22
23 #ifdef  NO_UNDERSCORES
24 /* Since C identifiers are not normally prefixed with an underscore
25    on this system, the asm identifier `syscall_error' intrudes on the
26    C name space.  Make sure we use an innocuous name.  */
27 #define syscall_error   C_SYMBOL_NAME(__syscall_error)
28 #endif
29
30 #ifdef HAVE_ELF
31 #define ENTRY(name)             \
32   .global C_SYMBOL_NAME(name);  \
33   .type name,@function;         \
34   .align 4;                     \
35   C_LABEL(name)
36
37 #else
38 #define ENTRY(name)             \
39   .global C_SYMBOL_NAME(name);  \
40   .align 4;                     \
41   C_LABEL(name)
42
43 #endif /* HAVE_ELF */
44
45 #define PSEUDO(name, syscall_name, args)        \
46   .global syscall_error;                        \
47   ENTRY (name)                                  \
48   mov SYS_ify(syscall_name), %g1;               \
49   ta 0;                                         \
50   bcc 1f;                                       \
51   sethi %hi(syscall_error), %g1;                \
52   jmp %g1 + %lo(syscall_error); nop;            \
53 1:
54
55 #define ret             retl; nop
56 #define r0              %o0
57 #define r1              %o1
58 #define MOVE(x,y)       mov x, y
59
60 #endif  /* __ASSEMBLER__ */