summaryrefslogtreecommitdiff
path: root/lib/libc/arch/sparc
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2000-10-16 14:25:06 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2000-10-16 14:25:06 +0000
commit1222e75a0f5b285de2935b38f8b119da539304a8 (patch)
tree88071cc103fd397ad49cac5306db17b93b8b0fde /lib/libc/arch/sparc
parent1476c6f1583741fe0c89585ffb0065abfe371059 (diff)
re-add weak sparc support; d@
Diffstat (limited to 'lib/libc/arch/sparc')
-rw-r--r--lib/libc/arch/sparc/SYS.h23
1 files changed, 9 insertions, 14 deletions
diff --git a/lib/libc/arch/sparc/SYS.h b/lib/libc/arch/sparc/SYS.h
index c7a67cfeb5b..ce336d37461 100644
--- a/lib/libc/arch/sparc/SYS.h
+++ b/lib/libc/arch/sparc/SYS.h
@@ -34,7 +34,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $OpenBSD: SYS.h,v 1.5 2000/10/11 01:49:43 d Exp $
+ * $OpenBSD: SYS.h,v 1.6 2000/10/16 14:25:04 deraadt Exp $
*/
#include <machine/asm.h>
@@ -43,10 +43,16 @@
#ifdef __STDC__
#define _CAT(x,y) x##y
-#define __ENTRY(p,x) ENTRY(p##x)
+#define __ENTRY(p,x) \
+ .weak _C_LABEL(x); \
+ _C_LABEL(x) = _C_LABEL(p##x); \
+ ENTRY(p##x)
#else
#define _CAT(x,y) x/**/y
-#define __ENTRY(p,x) ENTRY(p/**/x)
+#define __ENTRY(p,x) \
+ .weak _C_LABEL(x); \
+ _C_LABEL(x) = _C_LABEL(p/**/x); \
+ ENTRY(p/**/x)
#endif
/*
@@ -86,7 +92,6 @@
__ENTRY(p,x); mov (_CAT(SYS_,y))|SYSCALL_G2RFLAG,%g1; add %o7,8,%g2; \
t ST_SYSCALL; ERROR()
-#ifdef _THREAD_SAFE
/*
* For the thread_safe versions, we prepend _thread_sys_ to the function
* name so that the 'C' wrapper can go around the real name.
@@ -95,14 +100,4 @@
# define RSYSCALL(x) __RSYSCALL(_thread_sys_,x)
# define PSEUDO(x,y) __PSEUDO(_thread_sys_,x,y)
# define SYSENTRY(x) __ENTRY(_thread_sys_,x)
-#else _THREAD_SAFE
-/*
- * The non-threaded library defaults to traditional syscalls where
- * the function name matches the syscall name.
- */
-# define SYSCALL(x) __SYSCALL(,x)
-# define RSYSCALL(x) __RSYSCALL(,x)
-# define PSEUDO(x,y) __PSEUDO(,x,y)
-# define SYSENTRY(x) __ENTRY(,x)
-#endif _THREAD_SAFE
.globl cerror