aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/mach
diff options
context:
space:
mode:
authorThomas Bushnell, BSG <thomas@gnu.org>1996-09-11 02:48:08 +0000
committerThomas Bushnell, BSG <thomas@gnu.org>1996-09-11 02:48:08 +0000
commit158ff48e348ece17fbda4d9b3c152df2f7cc76d0 (patch)
treeca32ddb72f8448cca126b5ce369bef67310cfeb3 /sysdeps/mach
parentda74e90200dd19f2f40a47135759eab62e8bfce7 (diff)
downloadglibc-158ff48e348ece17fbda4d9b3c152df2f7cc76d0.zip
glibc-158ff48e348ece17fbda4d9b3c152df2f7cc76d0.tar.gz
glibc-158ff48e348ece17fbda4d9b3c152df2f7cc76d0.tar.bz2
*** empty log message ***cvs/libc-960911
Tue Sep 10 14:42:39 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * elf/dl-cache.c: Rename to ... * sysdeps/generic/dl-cache.c: ... here. * sysdeps/mach/hurd/dl-cache.c: New file. * mach/Makefile (distribute): Add `errsystems.awk'. * hurd/Makefile (distribute): Add `Notes' and `intr-msg.h'. * hurd/hurdintr.awk: Delete file. (Not used in ages.) * hurd/intr-rpc.awk: Likewise. * hurd/invoke-trans.c: Likewise. * sysdeps/mach/hurd/i386/longjmp-ctx.c: Likewise. * sysdeps/mach/hurd/alpha/longjmp-ctx.c: Likewise. * sysdeps/mach/hurd/mips/longjmp-ctx.c: Likewise. * sysdeps/mach/hurd/i386/init-fault.c: Likewise. * sysdeps/mach/hurd/mips/init-fault.c: Likewise. * sysdeps/stub/init-fault.c: Likewise. * sysdeps/stub/longjmp-ctx.c: Likewise. Thu Sep 5 08:58:47 1996 Richard Henderson <rth@tamu.edu> * sysdeps/alpha/elf/start.S: Make _start global again.
Diffstat (limited to 'sysdeps/mach')
-rw-r--r--sysdeps/mach/hurd/alpha/longjmp-ctx.c38
-rw-r--r--sysdeps/mach/hurd/dl-cache.c (renamed from sysdeps/mach/hurd/i386/longjmp-ctx.c)21
-rw-r--r--sysdeps/mach/hurd/i386/init-fault.c41
-rw-r--r--sysdeps/mach/hurd/mips/init-fault.c41
-rw-r--r--sysdeps/mach/hurd/mips/longjmp-ctx.c41
5 files changed, 5 insertions, 177 deletions
diff --git a/sysdeps/mach/hurd/alpha/longjmp-ctx.c b/sysdeps/mach/hurd/alpha/longjmp-ctx.c
deleted file mode 100644
index dfc16fd..0000000
--- a/sysdeps/mach/hurd/alpha/longjmp-ctx.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Perform a `longjmp' on a `struct sigcontext'. Alpha version.
-Copyright (C) 1994 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
-
-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. */
-
-#include <setjmp.h>
-#include <hurd/signal.h>
-#include <string.h>
-
-void
-_hurd_longjmp_sigcontext (struct sigcontext *scp, jmp_buf env, int retval)
-{
- memset (scp, 0, sizeof (*scp));
- scp->sc_regs[9] = env[0].__9;
- scp->sc_regs[11] = env[0].__11;
- scp->sc_regs[12] = env[0].__12;
- scp->sc_regs[13] = env[0].__13;
- scp->sc_regs[14] = env[0].__14;
- scp->sc_regs[15] = (long int) env[0].__fp;
- scp->sc_regs[30] = (long int) env[0].__sp;
- scp->sc_pc = (long int) env[0].__pc;
-
- memcpy (&scp->sc_fpregs[2], &env[0].__f2, sizeof (double));
-}
diff --git a/sysdeps/mach/hurd/i386/longjmp-ctx.c b/sysdeps/mach/hurd/dl-cache.c
index acfbee6..7d919cd 100644
--- a/sysdeps/mach/hurd/i386/longjmp-ctx.c
+++ b/sysdeps/mach/hurd/dl-cache.c
@@ -1,5 +1,5 @@
-/* Perform a `longjmp' on a `struct sigcontext'. i386 version.
-Copyright (C) 1994 Free Software Foundation, Inc.
+/* Stubby version of dl-cache; the Hurd doesn't support this "feature".
+Copyright (C) 1996 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -17,19 +17,8 @@ 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. */
-#include <setjmp.h>
-#include <hurd/signal.h>
-#include <string.h>
-
-void
-_hurd_longjmp_sigcontext (struct sigcontext *scp, jmp_buf env, int retval)
+const char *
+_dl_load_cache_lookup (const char *name)
{
- memset (scp, 0, sizeof (*scp));
- scp->sc_ebx = env[0].__bx;
- scp->sc_esi = env[0].__si;
- scp->sc_edi = env[0].__di;
- scp->sc_ebp = (int) env[0].__bp;
- scp->sc_uesp = (int) env[0].__sp;
- scp->sc_eip = (int) env[0].__pc;
- scp->sc_eax = retval == 0 ? 1 : retval;
+ return 0;
}
diff --git a/sysdeps/mach/hurd/i386/init-fault.c b/sysdeps/mach/hurd/i386/init-fault.c
deleted file mode 100644
index ff22814..0000000
--- a/sysdeps/mach/hurd/i386/init-fault.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Set up a thread_state for proc_handle_exceptions. i386 version.
-Copyright (C) 1994 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
-
-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. */
-
-#include <hurd/signal.h>
-#include <mach/thread_status.h>
-#include <string.h>
-#include <setjmp.h>
-
-extern jmp_buf _hurd_sigthread_fault_env;
-
-static char fault_stack[32];
-static volatile void
-faulted (void)
-{
- __longjmp (_hurd_sigthread_fault_env, 1);
-}
-
-void
-_hurd_initialize_fault_recovery_state (void *state)
-{
- struct i386_thread_state *ts = state;
- memset (ts, 0, sizeof (*ts));
- ts->uesp = (int) &fault_stack[sizeof (fault_stack)];
- ts->eip = (int) &faulted;
-}
diff --git a/sysdeps/mach/hurd/mips/init-fault.c b/sysdeps/mach/hurd/mips/init-fault.c
deleted file mode 100644
index e6f8acf..0000000
--- a/sysdeps/mach/hurd/mips/init-fault.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Set up a thread_state for proc_handle_exceptions. MIPS version.
-Copyright (C) 1994 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
-
-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. */
-
-#include <hurd/signal.h>
-#include <mach/thread_status.h>
-#include <string.h>
-#include <setjmp.h>
-
-extern jmp_buf _hurd_sigthread_fault_env;
-
-static char fault_stack[32];
-static volatile void
-faulted (void)
-{
- __longjmp (_hurd_sigthread_fault_env, 1);
-}
-
-void
-_hurd_initialize_fault_recovery_state (void *state)
-{
- struct mips_thread_state *ts = state;
- memset (ts, 0, sizeof (*ts));
- ts->r29 = (int) &fault_stack[sizeof (fault_stack)];
- ts->pc = (int) &faulted;
-}
diff --git a/sysdeps/mach/hurd/mips/longjmp-ctx.c b/sysdeps/mach/hurd/mips/longjmp-ctx.c
deleted file mode 100644
index 0c78f6b..0000000
--- a/sysdeps/mach/hurd/mips/longjmp-ctx.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Perform a `longjmp' on a `struct sigcontext'. MIPS version.
-Copyright (C) 1994 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
-
-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. */
-
-#include <setjmp.h>
-#include <hurd/signal.h>
-#include <string.h>
-
-void
-_hurd_longjmp_sigcontext (struct sigcontext *scp, jmp_buf env, int retval)
-{
- scp->sc_gpr[16] = env[0].__regs[0];
- scp->sc_gpr[17] = env[0].__regs[1];
- scp->sc_gpr[18] = env[0].__regs[2];
- scp->sc_gpr[19] = env[0].__regs[3];
- scp->sc_gpr[20] = env[0].__regs[4];
- scp->sc_gpr[21] = env[0].__regs[5];
- scp->sc_gpr[22] = env[0].__regs[6];
- scp->sc_gpr[23] = env[0].__regs[7];
-
- scp->sc_gpr[28] = (int) env[0].__gp;
- scp->sc_fp = (int) env[0].__fp;
- scp->sc_sp = (int) env[0].__sp;
- scp->sc_pc = (int) env[0].__pc;
- scp->sc_gpr[2] = retval ?: 1;
-}