diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2000-10-16 14:25:06 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2000-10-16 14:25:06 +0000 |
commit | 1222e75a0f5b285de2935b38f8b119da539304a8 (patch) | |
tree | 88071cc103fd397ad49cac5306db17b93b8b0fde /lib/libc/arch/sparc | |
parent | 1476c6f1583741fe0c89585ffb0065abfe371059 (diff) |
re-add weak sparc support; d@
Diffstat (limited to 'lib/libc/arch/sparc')
-rw-r--r-- | lib/libc/arch/sparc/SYS.h | 23 |
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 |