Formerly unix/sysv/sysv4/solaris2/sparc/sysdep.h.~2~
authorBrendan Kehoe <brendan@zen.org>
Thu, 26 Aug 1993 23:25:13 +0000 (23:25 +0000)
committerBrendan Kehoe <brendan@zen.org>
Thu, 26 Aug 1993 23:25:13 +0000 (23:25 +0000)
sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h

index d09b6c4..cd6ef7f 100644 (file)
@@ -1,4 +1,44 @@
+/* Copyright (C) 1993 Free Software Foundation, Inc.
+   Contributed by Brendan Kehoe (brendan@zen.org).
+
+The GNU C Library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Library General Public License as
+published by the Free Software Foundation; either version 2 of the
+License, or (at your option) any later version.
+
+The GNU C Library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+Library General Public License for more details.
+
+You should have received a copy of the GNU Library General Public
+License along with the GNU C Library; see the file COPYING.LIB.  If
+not, write to the Free Software Foundation, Inc., 675 Mass Ave,
+Cambridge, MA 02139, USA.  */
+
 /* Solaris 2 does not precede the asm names of C symbols with a `_'. */
 #define        NO_UNDERSCORES
 
-#include <sysdeps/unix/sparc/sysdep.h>
+#include <sysdeps/unix/sysdep.h>
+
+#define        ENTRY(name)                                                           \
+  .section ".text";                                                          \
+  .align 4;                                                                  \
+  .global C_SYMBOL_NAME(name);                                               \
+  .type  C_SYMBOL_NAME(name), \#function;                                    \
+  C_LABEL(name)
+
+#define        PSEUDO(name, syscall_name, args)                                      \
+  ENTRY (name)                                                               \
+  mov SYS_ify(syscall_name), %g1;                                            \
+  ta 8;                                                                              \
+  bcs C_SYMBOL_NAME(syscall_error);                                          \
+  nop;                                                                       \
+  retl;                                                                              \
+  mov %g0, %o0
+
+#define        ret             retl; nop
+#define        r0              %o0
+#define        r1              %o1
+#define        MOVE(x,y)       mov x, y
+