about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1997-07-11 01:19:07 +0000
committerUlrich Drepper <drepper@redhat.com>1997-07-11 01:19:07 +0000
commit2d7da676f38bc00f40d2b604036c0295c156529e (patch)
treeb07f60862c86c9a3cd03ec0e4bfbe600b99c0f55 /sysdeps
parent9c2322bc08c01e34c7488ef12c1d1bf26097190b (diff)
downloadglibc-2d7da676f38bc00f40d2b604036c0295c156529e.tar.gz
glibc-2d7da676f38bc00f40d2b604036c0295c156529e.tar.xz
glibc-2d7da676f38bc00f40d2b604036c0295c156529e.zip
1997-07-11 03:00  Ulrich Drepper  <drepper@cygnus.com>

	* inet/inet_ntoa.c: Prevent looking for thread data key if we found
	one.

	* signal/sigandset.c: Include stddef.h to get NULL defined.
	* signal/sigisempty.c: Likewise.
	* signal/sigorset.c: Likewise.
	* sysdeps/stub/if_index.h: Likewise.
	* wcsmbs/wcstod_l.c: Include locale.h to get __locale_t defined.
	* wcsmbs/wcstof_l.c: Likewise.
	* wcsmbs/wcstol_l.c: Likewise.
	* wcsmbs/wcstold_l.c: Likewise.
	* wcsmbs/wcstoll_l.c: Likewise.
	* wcsmbs/wcstoul_l.c: Likewise.
	* wcsmbs/wcstoull_l.c: Likewise.
	Reported by Marcus G. Daniels <marcus@cathcart.sysc.pdx.edu>.

	* stdio-common/snprintf.c: Use ISO C function definition form.

	* sysdeps/stub/libc-lock.h: Don't define __libc_key_create and
	__libc_setspecific as empty macros since they are used as
	function with return value.
	Reported by Andreas Jaeger.

1997-07-10  Marcus G. Daniels  <marcus@cathcart.sysc.pdx.edu>

	* sysdeps/mach/hurd/select.c (__select): Need bit count for
	MACH_MSG_TYPE_INTEGER_T.

1997-07-08 10:12  Fila Kolodny  <fila@ibi.com>

	* sysdeps/i370/Implies: New file for i370-ibm-mvs port.
	* sysdeps/mvs/Implies: Likewise.

1997-07-09 23:06  Thorsten Kukuk  <kukuk@vt.uni-paderborn.de>

	* nis/Makefile: Add new source files.

	* nis/nis_intern.h: Add new internal functions.
	* nis/rpcsvc/nislib.h: Likewise.

	* nis/lckcache.c: New.
	* nis/nis_cache.c: New, dummy functions in the moment.
	* nis/nis_util.c: New.
	* nis/nisplus-parser.h: New.
	* nis/nss_nisplus/nisplus-parser.c: New.
	* nis/rpcsvc/nis_cache.h: New.
	* nis/rpcsvc/nis_cache.x: New.

	* nis/nss_compat/compat-grp.c: Matches Solaris behaviour now.
	* nis/nss_compat/compat-pwd.c: Likewise.
	* nis/nss_compat/compat-spwd.c: Likewise.
	* nis/nss_nisplus/nisplus-alias.c: Likewise.
	* nis/nss_nisplus/nisplus-ethers.c: Likewise.
	* nis/nss_nisplus/nisplus-grp.c: Likewise.
	* nis/nss_nisplus/nisplus-hosts.c: Likewise.
	* nis/nss_nisplus/nisplus-netgrp.c: Likewise.
	* nis/nss_nisplus/nisplus-network.c: Likewise.
	* nis/nss_nisplus/nisplus-proto.c: Likewise.
	* nis/nss_nisplus/nisplus-publickey.c: Likewise.
	* nis/nss_nisplus/nisplus-pwd.c: Likewise.
	* nis/nss_nisplus/nisplus-rpc.c: Likewise.
	* nis/nss_nisplus/nisplus-service.c: Likewise.
	* nis/nss_nisplus/nisplus-spwd.c: Likewise.

	* nis/nss_nis/nis-publickey.c: Remove libc-lock.h include.

	* nis/nis_intern.c: Removed.

	* nis/nis_call.c: Complete rewrite.
	* nis/nis_lookup.c: Likewise.
	* nis/nis_table.c: Likewise.

	* nis/libnsl.map: Add missing symbols.

	* nis/nis_print.c: Fix nis_print_link.
	* nis/nis_subr.c: Fix nis_getnames.

1997-07-09 07:19  H.J. Lu  <hjl@gnu.ai.mit.edu>

	* posix/execvp.c (execvp): Handle ESTALE.

1997-07-10 13:54  Ulrich Drepper  <drepper@cygnus.com>

	* posix/regex.c: Make CHAR_SET_SIZE definition always available,
	even if SYNTAX_TABLE is defined.
	Patch by Akim Demaille <demaille@inf.enst.fr>.

1997-07-09 08:16  H.J. Lu  <hjl@gnu.ai.mit.edu>

	* libio/fileops.c (_IO_file_underflow): Adjust pointers
	before calling _IO_SYSREAD ().

1997-07-07 22:54  Zack Weinberg  <zack@rabi.phys.columbia.edu>

	* sysdeps/sparc/divrem.m4: Eliminate use of "DEFS.h"
	(sysdep.h does the same job).
	* sysdeps/sparc/alloca.S: Likewise.
	* sysdeps/sparc/dotmul.S: Likewise.
	* sysdeps/sparc/udiv_qrnnd.S: Likewise.

	* sysdeps/sparc/rem.S: Regenerated.
	* sysdeps/sparc/sdiv.S: Regenerated.
	* sysdeps/sparc/udiv.S: Regenerated.
	* sysdeps/sparc/urem.S: Regenerated.

	* sysdeps/sparc/DEFS.h: Removed.
	* sysdeps/sparc/elf/DEFS.h: Removed.
	* sysdeps/sparc/Dist: Don't distribute DEFS.h.

	* sysdeps/unix/sparc/sysdep.h: Use 4 byte alignment. Add .type
	directive #ifdef HAVE_ELF.  Minor format changes.

	* sysdeps/alpha/DEFS.h: Removed.
	* sysdeps/alpha/Dist: Don't distribute DEFS.h.

1997-07-07 19:03  H.J. Lu  <hjl@gnu.ai.mit.edu>

	* math/test-fenv.c (feenv_nomask_test): Move
	fesetenv (FE_NOMASK_ENV) after fork () to work with
	SMP.

	* sysdeps/i386/fpu_control.h (_FPU_IEEE): Fix comment.

1997-07-08  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* libc.map: Add _IO_peekc_locked.

1997-07-07 15:45  Fila Kolodny  <fila@ibi.com>

	* Makeconfig: Add dbobjdir to rpath-link analogous to nssobjdir.

1997-07-08  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/m68k/fpu/feholdexcpt.c: Shift the exception mask in the
	right position.
	* sysdeps/m68k/fpu/fesetenv.c (fesetenv): Likewise.

1997-07-08 13:59  Ulrich Drepper  <drepper@cygnus.com>

	* time/strftime.c (spaces, zeroes): Handle broken SGI compiler.
	Patch by Richard Stallman <rms@gnu.ai.mit.edu>.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/alpha/DEFS.h27
-rw-r--r--sysdeps/alpha/Dist1
-rw-r--r--sysdeps/i370/Implies1
-rw-r--r--sysdeps/i386/fpu_control.h4
-rw-r--r--sysdeps/m68k/fpu/feholdexcpt.c2
-rw-r--r--sysdeps/m68k/fpu/fesetenv.c6
-rw-r--r--sysdeps/mach/hurd/select.c2
-rw-r--r--sysdeps/mvs/Implies1
-rw-r--r--sysdeps/sparc/DEFS.h12
-rw-r--r--sysdeps/sparc/Dist2
-rw-r--r--sysdeps/sparc/alloca.S4
-rw-r--r--sysdeps/sparc/divrem.m42
-rw-r--r--sysdeps/sparc/dotmul.S4
-rw-r--r--sysdeps/sparc/elf/DEFS.h5
-rw-r--r--sysdeps/sparc/rem.S12
-rw-r--r--sysdeps/sparc/sdiv.S12
-rw-r--r--sysdeps/sparc/udiv.S12
-rw-r--r--sysdeps/sparc/udiv_qrnnd.S4
-rw-r--r--sysdeps/sparc/urem.S12
-rw-r--r--sysdeps/stub/bits/libc-lock.h4
-rw-r--r--sysdeps/stub/if_index.c15
-rw-r--r--sysdeps/unix/sparc/sysdep.h32
22 files changed, 90 insertions, 86 deletions
diff --git a/sysdeps/alpha/DEFS.h b/sysdeps/alpha/DEFS.h
deleted file mode 100644
index c2a4fc88ae..0000000000
--- a/sysdeps/alpha/DEFS.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifdef __STDC__
-#define FUNC__(name)		\
-	.align 3;		\
-        .globl __##name;	\
-        .ent __##name;		\
-        __##name:		\
-	lda sp, -16(sp);	\
-	.frame sp, 16, t9, 0;	\
-	.prologue 0
-#else
-#define FUNC__(name)		\
-	.align 3;		\
-        .globl __/**/name;	\
-        .ent __/**/name,0;	\
-        __/**/name:		\
-	lda sp, -16(sp);	\
-	.frame sp, 16, t9, 0;	\
-	.prologue 0
-#endif
-
-#ifdef __STDC__
-#define NAME__(name)	\
-	__##name
-#else
-#define NAME__(name)	\
-	__/**/name
-#endif
diff --git a/sysdeps/alpha/Dist b/sysdeps/alpha/Dist
index 022fa0379f..581022f6c0 100644
--- a/sysdeps/alpha/Dist
+++ b/sysdeps/alpha/Dist
@@ -1,5 +1,4 @@
 setjmp_aux.c
-DEFS.h
 divrem.h
 divl.S divq.S reml.S remq.S
 _mcount.S
diff --git a/sysdeps/i370/Implies b/sysdeps/i370/Implies
new file mode 100644
index 0000000000..39a34c5f57
--- /dev/null
+++ b/sysdeps/i370/Implies
@@ -0,0 +1 @@
+wordsize-32
diff --git a/sysdeps/i386/fpu_control.h b/sysdeps/i386/fpu_control.h
index 4677f13518..f0fb2fe9c1 100644
--- a/sysdeps/i386/fpu_control.h
+++ b/sysdeps/i386/fpu_control.h
@@ -1,5 +1,5 @@
 /* FPU control word bits.  i387 version.
-   Copyright (C) 1993, 1995, 1996 Free Software Foundation, Inc.
+   Copyright (C) 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Olaf Flebbe.
 
@@ -82,7 +82,7 @@
 
 #define _FPU_DEFAULT  0x137f
 
-/* IEEE:  same as above, but exceptions */
+/* IEEE:  same as above.  */
 #define _FPU_IEEE     0x137f
 
 /* Type of the control word.  */
diff --git a/sysdeps/m68k/fpu/feholdexcpt.c b/sysdeps/m68k/fpu/feholdexcpt.c
index 351fa8ae75..d8e2d8a8a1 100644
--- a/sysdeps/m68k/fpu/feholdexcpt.c
+++ b/sysdeps/m68k/fpu/feholdexcpt.c
@@ -32,7 +32,7 @@ feholdexcept (fenv_t *envp)
   fpsr = envp->status_register & ~FE_ALL_EXCEPT;
   __asm__ __volatile__ ("fmove%.l %0,%/fpsr" : : "dm" (fpsr));
   /* And set all exceptions to non-stop.  */
-  fpcr = envp->control_register & ~(FE_ALL_EXCEPT << 5);
+  fpcr = envp->control_register & ~(FE_ALL_EXCEPT << 6);
   __asm__ __volatile__ ("fmove%.l %0,%!" : : "dm" (fpcr));
 
   return 1;
diff --git a/sysdeps/m68k/fpu/fesetenv.c b/sysdeps/m68k/fpu/fesetenv.c
index f6611a20e0..8b4d6b0f88 100644
--- a/sysdeps/m68k/fpu/fesetenv.c
+++ b/sysdeps/m68k/fpu/fesetenv.c
@@ -32,15 +32,15 @@ fesetenv (const fenv_t *envp)
   __asm__ ("fmovem%.l %/fpcr/%/fpsr,%0" : "=m" (*&temp));
 
   temp.status_register &= ~FE_ALL_EXCEPT;
-  temp.control_register &= ~((FE_ALL_EXCEPT << 5) | FE_UPWARD);
+  temp.control_register &= ~((FE_ALL_EXCEPT << 6) | FE_UPWARD);
   if (envp == FE_DFL_ENV)
     ;
   else if (envp == FE_NOMASK_ENV)
-    temp.control_register |= FE_ALL_EXCEPT << 5;
+    temp.control_register |= FE_ALL_EXCEPT << 6;
   else
     {
       temp.control_register |= (envp->control_register
-				& ((FE_ALL_EXCEPT << 5) | FE_UPWARD));
+				& ((FE_ALL_EXCEPT << 6) | FE_UPWARD));
       temp.status_register |= envp->status_register & FE_ALL_EXCEPT;
     }
 
diff --git a/sysdeps/mach/hurd/select.c b/sysdeps/mach/hurd/select.c
index be27b667b9..904e1419ef 100644
--- a/sysdeps/mach/hurd/select.c
+++ b/sysdeps/mach/hurd/select.c
@@ -223,7 +223,7 @@ __select (nfds, readfds, writefds, exceptfds, timeout)
 	  /* We got a message.  Decode it.  */
 #define IO_SELECT_REPLY_MSGID (21012 + 100) /* XXX */
 	  const mach_msg_type_t inttype =
-	    { MACH_MSG_TYPE_INTEGER_T, sizeof (MACH_MSG_TYPE_INTEGER_T),
+	    { MACH_MSG_TYPE_INTEGER_T, sizeof (MACH_MSG_TYPE_INTEGER_T) * 8,
 	      1, 1, 0, 0 };
 	  if (msg.head.msgh_id == IO_SELECT_REPLY_MSGID &&
 	      msg.head.msgh_size >= sizeof msg.error &&
diff --git a/sysdeps/mvs/Implies b/sysdeps/mvs/Implies
new file mode 100644
index 0000000000..b3188f7428
--- /dev/null
+++ b/sysdeps/mvs/Implies
@@ -0,0 +1 @@
+posix
diff --git a/sysdeps/sparc/DEFS.h b/sysdeps/sparc/DEFS.h
deleted file mode 100644
index ab70f5550e..0000000000
--- a/sysdeps/sparc/DEFS.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifdef HAVE_ELF
-# define FUNC(name)		\
-	.global name;		\
-	.type name,@function;	\
-	.align 4;		\
-	name:
-#else
-# define FUNC(name)	\
-	.global name;	\
-	.align 4;	\
-	name:
-#endif
diff --git a/sysdeps/sparc/Dist b/sysdeps/sparc/Dist
index 55f26143fd..8bd3729740 100644
--- a/sysdeps/sparc/Dist
+++ b/sysdeps/sparc/Dist
@@ -1,5 +1,3 @@
-DEFS.h
-elf/DEFS.h
 dotmul.S umul.S
 divrem.m4 sdiv.S udiv.S rem.S urem.S
 alloca.S
diff --git a/sysdeps/sparc/alloca.S b/sysdeps/sparc/alloca.S
index 207f75ca4c..dcbd171163 100644
--- a/sysdeps/sparc/alloca.S
+++ b/sysdeps/sparc/alloca.S
@@ -16,7 +16,7 @@
    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.  */
 
-#include "DEFS.h"
+#include "sysdep.h"
 
 /* Code produced by Sun's C compiler calls this function with two extra
    arguments which it makes relocatable symbols but seem always to be
@@ -26,7 +26,7 @@
 #define __builtin_alloca ___builtin_alloca
 #endif
 
-FUNC (__builtin_alloca)
+ENTRY (__builtin_alloca)
 	sub %sp, %o0, %sp	/* Push some stack space.  */
 	retl			/* Return; the returned buffer leaves 96 */
 	add %sp, 96, %o0	/* bytes of register save area at the top. */
diff --git a/sysdeps/sparc/divrem.m4 b/sysdeps/sparc/divrem.m4
index cada804706..665abf11ae 100644
--- a/sysdeps/sparc/divrem.m4
+++ b/sysdeps/sparc/divrem.m4
@@ -82,7 +82,7 @@ L.$1.eval(2**N+$2):
 	', `	DEVELOP_QUOTIENT_BITS(incr($1), `eval(2*$2-1)')')
 	ifelse($1, 1, `9:')')dnl
 
-#include "DEFS.h"
+#include "sysdep.h"
 #ifdef __linux__
 #include <asm/traps.h>
 #else
diff --git a/sysdeps/sparc/dotmul.S b/sysdeps/sparc/dotmul.S
index 1c59a27e80..7ce695cb7a 100644
--- a/sysdeps/sparc/dotmul.S
+++ b/sysdeps/sparc/dotmul.S
@@ -10,8 +10,8 @@
  * This code optimizes short (less than 13-bit) multiplies.
  */
 
-#include "DEFS.h"
-FUNC(.mul)
+#include "sysdep.h"
+ENTRY(.mul)
 	mov	%o0, %y		! multiplier -> Y
 	andncc	%o0, 0xfff, %g0	! test bits 12..31
 	be	Lmul_shortway	! if zero, can do it the short way
diff --git a/sysdeps/sparc/elf/DEFS.h b/sysdeps/sparc/elf/DEFS.h
deleted file mode 100644
index 84f078ae40..0000000000
--- a/sysdeps/sparc/elf/DEFS.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#define	FUNC(name)		\
-	.global name;		\
-	.type name,@function;	\
-	.align 4;		\
-	name:
diff --git a/sysdeps/sparc/rem.S b/sysdeps/sparc/rem.S
index 05916f0b06..d50f1af630 100644
--- a/sysdeps/sparc/rem.S
+++ b/sysdeps/sparc/rem.S
@@ -37,10 +37,18 @@
 
 
 
-#include "DEFS.h"
+#include "sysdep.h"
+#ifdef __linux__
+#include <asm/traps.h>
+#else
+#ifdef __svr4__
 #include <sys/trap.h>
+#else
+#include <machine/trap.h>
+#endif
+#endif
 
-FUNC(.rem)
+ENTRY(.rem)
 	! compute sign of result; if neither is negative, no problem
 	orcc	%o1, %o0, %g0	! either negative?
 	bge	2f			! no, go do the divide
diff --git a/sysdeps/sparc/sdiv.S b/sysdeps/sparc/sdiv.S
index 910cea528a..02ed2e973c 100644
--- a/sysdeps/sparc/sdiv.S
+++ b/sysdeps/sparc/sdiv.S
@@ -37,10 +37,18 @@
 
 
 
-#include "DEFS.h"
+#include "sysdep.h"
+#ifdef __linux__
+#include <asm/traps.h>
+#else
+#ifdef __svr4__
 #include <sys/trap.h>
+#else
+#include <machine/trap.h>
+#endif
+#endif
 
-FUNC(.div)
+ENTRY(.div)
 	! compute sign of result; if neither is negative, no problem
 	orcc	%o1, %o0, %g0	! either negative?
 	bge	2f			! no, go do the divide
diff --git a/sysdeps/sparc/udiv.S b/sysdeps/sparc/udiv.S
index 49df8ab2a7..4a7d1526b0 100644
--- a/sysdeps/sparc/udiv.S
+++ b/sysdeps/sparc/udiv.S
@@ -37,10 +37,18 @@
 
 
 
-#include "DEFS.h"
+#include "sysdep.h"
+#ifdef __linux__
+#include <asm/traps.h>
+#else
+#ifdef __svr4__
 #include <sys/trap.h>
+#else
+#include <machine/trap.h>
+#endif
+#endif
 
-FUNC(.udiv)
+ENTRY(.udiv)
 
 	! Ready to divide.  Compute size of quotient; scale comparand.
 	orcc	%o1, %g0, %o5
diff --git a/sysdeps/sparc/udiv_qrnnd.S b/sysdeps/sparc/udiv_qrnnd.S
index 9126b64f50..74b932d34b 100644
--- a/sysdeps/sparc/udiv_qrnnd.S
+++ b/sysdeps/sparc/udiv_qrnnd.S
@@ -26,7 +26,7 @@
 ! n1		i1
 ! n0		i2
 ! d		i3
-#include "DEFS.h"
+
 #include "sysdep.h"
 #undef ret	/* Kludge for glibc */
 
@@ -38,7 +38,7 @@ LC1:	.double	0r2147483648
 	.align	4
 	.global	__udiv_qrnnd
 	.type	__udiv_qrnnd,@function
-FUNC(__udiv_qrnnd)
+ENTRY(__udiv_qrnnd)
 	!#PROLOGUE# 0
 	save	%sp,-104,%sp
 	!#PROLOGUE# 1
diff --git a/sysdeps/sparc/urem.S b/sysdeps/sparc/urem.S
index 7f6a0812bf..e72c33dd63 100644
--- a/sysdeps/sparc/urem.S
+++ b/sysdeps/sparc/urem.S
@@ -37,10 +37,18 @@
 
 
 
-#include "DEFS.h"
+#include "sysdep.h"
+#ifdef __linux__
+#include <asm/traps.h>
+#else
+#ifdef __svr4__
 #include <sys/trap.h>
+#else
+#include <machine/trap.h>
+#endif
+#endif
 
-FUNC(.urem)
+ENTRY(.urem)
 
 	! Ready to divide.  Compute size of quotient; scale comparand.
 	orcc	%o1, %g0, %o5
diff --git a/sysdeps/stub/bits/libc-lock.h b/sysdeps/stub/bits/libc-lock.h
index 84623835c1..fa4dcdde1d 100644
--- a/sysdeps/stub/bits/libc-lock.h
+++ b/sysdeps/stub/bits/libc-lock.h
@@ -84,10 +84,10 @@
 typedef int __libc_key_t;
 
 /* Create key for thread specific data.  */
-#define __libc_key_create(KEY,DEST)
+#define __libc_key_create(KEY,DEST) -1
 
 /* Set thread-specific data associated with KEY to VAL.  */
-#define __libc_setspecific(KEY,VAL)
+#define __libc_setspecific(KEY,VAL) -1
 
 /* Get thread-specific data associated with KEY.  */
 #define __libc_getspecific(KEY) 0
diff --git a/sysdeps/stub/if_index.c b/sysdeps/stub/if_index.c
index 1cfec5fc1c..c8f9ea8929 100644
--- a/sysdeps/stub/if_index.c
+++ b/sysdeps/stub/if_index.c
@@ -16,21 +16,28 @@
    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.  */
 
-unsigned int if_nametoindex(const char *ifname)
+#define __need_NULL
+#include <stddef.h>
+
+unsigned int
+if_nametoindex (const char *ifname)
 {
   return 0;
 }
 
-char *if_indextoname(unsigned int ifindex, char *ifname)
+char *
+if_indextoname (unsigned int ifindex, char *ifname)
 {
   return NULL;
 }
 
-void if_freenameindex(struct if_nameindex *ifn)
+void
+if_freenameindex (struct if_nameindex *ifn)
 {
 }
 
-struct if_nameindex *if_nameindex(void)
+struct if_nameindex *
+if_nameindex (void)
 {
   return NULL;
 }
diff --git a/sysdeps/unix/sparc/sysdep.h b/sysdeps/unix/sparc/sysdep.h
index fe74a91809..576813a52c 100644
--- a/sysdeps/unix/sparc/sysdep.h
+++ b/sysdeps/unix/sparc/sysdep.h
@@ -27,19 +27,29 @@
 #define	syscall_error	C_SYMBOL_NAME(__syscall_error)
 #endif
 
-#define	ENTRY(name)							      \
-  .global C_SYMBOL_NAME(name);						      \
-  .align 2;								      \
+#ifdef HAVE_ELF
+#define	ENTRY(name)		\
+  .global C_SYMBOL_NAME(name);	\
+  .type name,@function;		\
+  .align 4;			\
   C_LABEL(name)
 
-#define	PSEUDO(name, syscall_name, args)				      \
-  .global syscall_error;						      \
-  ENTRY (name)								      \
-  mov SYS_ify(syscall_name), %g1;				   	      \
-  ta 0;									      \
-  bcc 1f;								      \
-  sethi %hi(syscall_error), %g1;					      \
-  jmp %g1 + %lo(syscall_error);	nop;					      \
+#else
+#define	ENTRY(name)		\
+  .global C_SYMBOL_NAME(name);	\
+  .align 4;			\
+  C_LABEL(name)
+
+#endif /* HAVE_ELF */
+
+#define	PSEUDO(name, syscall_name, args)	\
+  .global syscall_error;			\
+  ENTRY (name)					\
+  mov SYS_ify(syscall_name), %g1;		\
+  ta 0;						\
+  bcc 1f;					\
+  sethi %hi(syscall_error), %g1;		\
+  jmp %g1 + %lo(syscall_error);	nop;		\
 1:
 
 #define	ret		retl; nop