Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/lib/libc Bring sparc64 to the new compat layout.
details: https://anonhg.NetBSD.org/src/rev/badafa1f97b0
branches: trunk
changeset: 585088:badafa1f97b0
user: christos <christos%NetBSD.org@localhost>
date: Sun Oct 16 04:41:34 2005 +0000
description:
Bring sparc64 to the new compat layout.
diffstat:
lib/libc/arch/sparc64/Makefile.inc | 4 +-
lib/libc/arch/sparc64/gen/Makefile.inc | 6 +-
lib/libc/arch/sparc64/gen/setjmp.S | 119 -----------
lib/libc/arch/sparc64/gen/sigsetjmp.S | 101 ---------
lib/libc/arch/sparc64/sys/Ovfork.S | 62 -----
lib/libc/arch/sparc64/sys/__semctl.S | 42 ---
lib/libc/arch/sparc64/sys/__sigreturn14.S | 52 ----
lib/libc/arch/sparc64/sys/__sigtramp1.S | 169 ----------------
lib/libc/arch/sparc64/sys/msgctl.S | 45 ----
lib/libc/arch/sparc64/sys/shmctl.S | 45 ----
lib/libc/arch/sparc64/sys/sigaction.S | 45 ----
lib/libc/arch/sparc64/sys/sigpending.S | 60 -----
lib/libc/arch/sparc64/sys/sigprocmask.S | 73 ------
lib/libc/arch/sparc64/sys/sigreturn.S | 55 -----
lib/libc/arch/sparc64/sys/sigsuspend.S | 55 -----
lib/libc/compat/arch/sparc64/Makefile.inc | 4 +
lib/libc/compat/arch/sparc64/gen/Makefile.inc | 3 +
lib/libc/compat/arch/sparc64/gen/compat_setjmp.S | 119 +++++++++++
lib/libc/compat/arch/sparc64/gen/compat_sigsetjmp.S | 101 +++++++++
lib/libc/compat/arch/sparc64/sys/Makefile.inc | 6 +
lib/libc/compat/arch/sparc64/sys/compat_Ovfork.S | 62 +++++
lib/libc/compat/arch/sparc64/sys/compat___semctl.S | 42 +++
lib/libc/compat/arch/sparc64/sys/compat___sigreturn14.S | 52 ++++
lib/libc/compat/arch/sparc64/sys/compat___sigtramp1.S | 169 ++++++++++++++++
lib/libc/compat/arch/sparc64/sys/compat_msgctl.S | 45 ++++
lib/libc/compat/arch/sparc64/sys/compat_shmctl.S | 45 ++++
lib/libc/compat/arch/sparc64/sys/compat_sigaction.S | 45 ++++
lib/libc/compat/arch/sparc64/sys/compat_sigpending.S | 60 +++++
lib/libc/compat/arch/sparc64/sys/compat_sigprocmask.S | 73 ++++++
lib/libc/compat/arch/sparc64/sys/compat_sigreturn.S | 55 +++++
lib/libc/compat/arch/sparc64/sys/compat_sigsuspend.S | 55 +++++
31 files changed, 941 insertions(+), 928 deletions(-)
diffs (truncated from 2013 to 300 lines):
diff -r 30f313cc2976 -r badafa1f97b0 lib/libc/arch/sparc64/Makefile.inc
--- a/lib/libc/arch/sparc64/Makefile.inc Sun Oct 16 04:11:02 2005 +0000
+++ b/lib/libc/arch/sparc64/Makefile.inc Sun Oct 16 04:41:34 2005 +0000
@@ -1,11 +1,11 @@
-# $NetBSD: Makefile.inc,v 1.9 2005/04/20 18:26:11 jmc Exp $
+# $NetBSD: Makefile.inc,v 1.10 2005/10/16 04:41:34 christos Exp $
KMINCLUDES= arch/sparc64/SYS.h
KMSRCS= bzero.S ffs.S strlen.S htonl.S htons.S \
ntohl.S ntohs.S divrem.m4 \
mul.S saveregs.S umul.S
-SRCS+= __sigaction14_sigtramp.c __sigtramp1.S __sigtramp2.S
+SRCS+= __sigaction14_sigtramp.c __sigtramp2.S
# Some assembler files use v9a extensions.
AFLAGS+= -Wa,-Av9a
diff -r 30f313cc2976 -r badafa1f97b0 lib/libc/arch/sparc64/gen/Makefile.inc
--- a/lib/libc/arch/sparc64/gen/Makefile.inc Sun Oct 16 04:11:02 2005 +0000
+++ b/lib/libc/arch/sparc64/gen/Makefile.inc Sun Oct 16 04:41:34 2005 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.15 2005/04/15 22:39:11 kleink Exp $
+# $NetBSD: Makefile.inc,v 1.16 2005/10/16 04:41:34 christos Exp $
SRCS+= fabs.S modf.S
SRCS+= flt_rounds.c fpgetmask.c fpgetround.c fpgetsticky.c fpsetmask.c \
@@ -18,9 +18,9 @@
SRCS+= fpclassifyl.c isfinitel.c isinfl.c isnanl.c signbitl.c
SRCS+= bswap16.c bswap32.c bswap64.c
-SRCS+= setjmp.S __setjmp14.S
+SRCS+= __setjmp14.S
SRCS+= _setjmp.S
-SRCS+= sigsetjmp.S __sigsetjmp14.S __longjmp14.c
+SRCS+= __sigsetjmp14.S __longjmp14.c
SRCS+= makecontext.c resumecontext.c _lwp.c swapcontext.S
diff -r 30f313cc2976 -r badafa1f97b0 lib/libc/arch/sparc64/gen/setjmp.S
--- a/lib/libc/arch/sparc64/gen/setjmp.S Sun Oct 16 04:11:02 2005 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-/* $NetBSD: setjmp.S,v 1.5 2003/08/07 16:42:27 agc Exp $ */
-
-/*
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This software was developed by the Computer Systems Engineering group
- * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
- * contributed to Berkeley.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * from: Header: setjmp.s,v 1.2 92/06/25 03:18:43 torek Exp
- */
-
-#define _LOCORE
-#include <machine/asm.h>
-#include <machine/frame.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
- .asciz "@(#)setjmp.s 8.1 (Berkeley) 6/4/93"
-#else
- RCSID("$NetBSD: setjmp.S,v 1.5 2003/08/07 16:42:27 agc Exp $")
-#endif
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * C library -- setjmp, longjmp
- *
- * longjmp(a,v)
- * will generate a "return(v)" from
- * the last call to
- * setjmp(a)
- * by restoring registers from the stack,
- * and a struct sigcontext, see <signal.h>
- */
-
-#include "SYS.h"
-
-#define STACK_T_SZ
-ENTRY(setjmp)
- /*
- * We use the part of the sigcontext structure, the sp, pc, and npc fields,
- * for the sigstack call so we don't need to get our own stackframe. It
- * won't be filled out till later anyway.
- */
- mov %o0, %o3 /* Save our jmp_buf in %o3 */
- mov %o0, %o2 /* build sigcontext in [%o2] */
- mov 1, %o0 /* SIG_BLOCK */
- mov SYS_compat_13_sigprocmask13, %g1
- clr %o1 /* sigprocmask(SIG_BLOCK, (sigset_t *)NULL, (sigset_t *)a) */
- t ST_SYSCALL
-
- st %o0, [%o3 + 0x04] /* sc.sc_mask = current mask; */
- mov SYS___sigaltstack14, %g1
- clr %o0 /* sigstack(NULL, &foo) */
- add %o3, 0x38, %o1 /* (foo being the sigcontext14 sc_mask) */
- t ST_SYSCALL
-
- lduw [%o3 + 0x38+0x10], %o0 /* foo.ss_flags */
- and %o0, 1, %o1 /* onstack = foo.ss_flags & 1; */
- st %o0, [%o3 + 0x00] /* sc.sc_onstack = current onstack; */
- stx %sp, [%o3 + 0x08] /* sc.sc_sp = sp (both ours and caller's) */
- add %o7, 8, %o0
- stx %o0, [%o3 + 0x10] /* sc.sc_pc = return_pc */
- add %o7, 12, %o0
- stx %o0, [%o3 + 0x18] /* sc.sc_npc = return_pc + 4 */
- stx %g0, [%o3 + 0x20] /* sc.sc_psr = (clean psr) */
- stx %fp, [%o3 + 0x28] /* sc.sc_g1 = %fp (misuse, but what the heck) */
- /* sc.sc_o0 = random(), set in longjmp */
- retl /* return 0 */
- clr %o0
-
-/*
- * All we need to do here is force sigreturn to load a new stack pointer,
- * new <pc,npc>, and appropriate %o0 return value from the sigcontext built
- * in setjmp. The %i and %l registers will be reloaded from the place to
- * which %sp points, due to sigreturn() semantics (sigreturn does not modify
- * the window pointer in the psr, hence it must force all windows to reload).
- */
-ENTRY(longjmp)
- save %sp, -CC64FSZ, %sp
- ldx [%i0 + 0x08], %o2 /* make sure sc->sc_sp, sc->sc_fp nonzero */
- ldx [%i0 + 0x28], %o3
- orcc %o2, %o3, %g0
- bz,pn %xcc, Lbotch
- movrz %i1, 1, %i1 /* if (v == 0) v = 1; */
- st %i1, [%i0 + 0x30] /* sc.sc_o0 = v; */
- mov SYS_compat_13_sigreturn13, %g1
- mov %i0, %o0
- t ST_SYSCALL /* sigreturn(scp); */
-
-Lbotch:
- /* oops, caller botched it */
- call _C_LABEL(longjmperror)
- nop
- unimp 0
diff -r 30f313cc2976 -r badafa1f97b0 lib/libc/arch/sparc64/gen/sigsetjmp.S
--- a/lib/libc/arch/sparc64/gen/sigsetjmp.S Sun Oct 16 04:11:02 2005 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-/* $NetBSD: sigsetjmp.S,v 1.6 2002/05/07 01:34:21 eeh Exp $ */
-/*
- * Copyright (c) 1995 Paul Kranenburg
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by Paul Kranenburg.
- * 4. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- */
-
-#include "SYS.h"
-
-#ifdef PIC
-#ifdef BIGPIC
-
-ENTRY(sigsetjmp)
- PIC_PROLOGUE(%g1,%o2) ! %g1 = _GLOBAL_OFFSET_TABLE
- set _C_LABEL(setjmp), %o2 ! if (%o1 != 0) goto _setjmp;
- set _C_LABEL(_setjmp), %o3 ! else goto __setjmp;
- movrnz %o1, %o2, %o3
- ldx [%g1+%o3], %g1
- jmp %g1
- st %o1,[%o0+0x48] ! jmpbuf[JBLEN]
-
-
-ENTRY(siglongjmp)
- PIC_PROLOGUE(%g1,%o2) ! %g1 = _GLOBAL_OFFSET_TABLE
- ld [%o0 + 0x48],%o2 ! jmpbuf[JBLEN]
- set _C_LABEL(longjmp), %o3 ! if (%o2 != 0) goto _longjmp;
- set _C_LABEL(_longjmp), %o4 ! else goto __longjmp;
- movrnz %o2, %o3, %o4
- ldx [%g1 + %o4], %g1
- jmp %g1
- nop
- unimp 0
-
-#else
-
-ENTRY(sigsetjmp)
- PIC_PROLOGUE(%g1,%o2) ! %g1 = _GLOBAL_OFFSET_TABLE
- cmp %o1, 0
- bne,a 1f
- ldx [%g1 + _C_LABEL(setjmp)], %g1 ! if (%o1 != 0) goto _setjmp;
- ldx [%g1 + _C_LABEL(_setjmp)], %g1 ! else goto __setjmp;
-1:
- jmp %g1
- st %o1,[%o0+0x48] ! jmpbuf[JBLEN]
-
-
-ENTRY(siglongjmp)
- PIC_PROLOGUE(%g1,%o2) ! %g1 = _GLOBAL_OFFSET_TABLE
- cmp %o2, 0
- ld [%o0 + 0x48],%o2 ! jmpbuf[JBLEN]
- bne,a 1f
- ldx [%g1 + _C_LABEL(longjmp)], %g1 ! if (%o2 != 0) goto _longjmp;
- ldx [%g1 + _C_LABEL(_longjmp)], %g1 ! else goto __longjmp;
-1:
- jmp %g1
- nop
- unimp 0
-
-#endif /* BIGPIC */
-#else /* PIC */
-
-ENTRY(sigsetjmp)
- brz,pt %o1,_C_LABEL(_setjmp)
- st %o1,[%o0+0x48] ! jmpbuf[JBLEN]
- ba,a,pt %icc,_C_LABEL(setjmp)
- nop ! spitfire bug
- unimp 0
-
-ENTRY(siglongjmp)
- ld [%o0 + 0x48], %g1
- brz,pt %g1, _C_LABEL(_longjmp)
- nop
- ba,a,pt %icc, _C_LABEL(longjmp)
- unimp 0
-
-#endif /* PIC */
diff -r 30f313cc2976 -r badafa1f97b0 lib/libc/arch/sparc64/sys/Ovfork.S
--- a/lib/libc/arch/sparc64/sys/Ovfork.S Sun Oct 16 04:11:02 2005 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-/* $NetBSD: Ovfork.S,v 1.4 2003/08/07 16:42:29 agc Exp $ */
-
-/*
- * Copyright (c) 1992, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This software was developed by the Computer Systems Engineering group
- * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
- * contributed to Berkeley.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
Home |
Main Index |
Thread Index |
Old Index