mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
*** empty log message ***
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.
This commit is contained in:
parent
da74e90200
commit
158ff48e34
27
ChangeLog
27
ChangeLog
@ -7,6 +7,25 @@ Tue Sep 10 20:43:45 1996 Ulrich Drepper <drepper@cygnus.com>
|
|||||||
|
|
||||||
* db/makedb.c: Include <locale.h>. Reported by Fila Kolodny.
|
* db/makedb.c: Include <locale.h>. Reported by Fila Kolodny.
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
Tue Sep 10 13:49:08 1996 Ulrich Drepper <drepper@cygnus.com>
|
Tue Sep 10 13:49:08 1996 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
* inet/herrno.c: Initialize `h_errno' so that we can provide
|
* inet/herrno.c: Initialize `h_errno' so that we can provide
|
||||||
@ -428,10 +447,6 @@ Thu Sep 5 21:08:44 1996 Ulrich Drepper <drepper@cygnus.com>
|
|||||||
* sysdeps/unix/sysv/linux/schedbits.h: New file. Include
|
* sysdeps/unix/sysv/linux/schedbits.h: New file. Include
|
||||||
clone prototypes and associated flags.
|
clone prototypes and associated flags.
|
||||||
|
|
||||||
Thu Sep 5 08:58:47 1996 Richard Henderson <rth@tamu.edu>
|
|
||||||
|
|
||||||
* sysdeps/alpha/elf/start.S: Make _start global again.
|
|
||||||
|
|
||||||
Thu Sep 5 13:18:25 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
|
Thu Sep 5 13:18:25 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
|
||||||
|
|
||||||
* sysdeps/mach/hurd/i386/init-first.c (__libc_argc, __libc_argv):
|
* sysdeps/mach/hurd/i386/init-first.c (__libc_argc, __libc_argv):
|
||||||
@ -467,6 +482,10 @@ Thu Sep 5 13:18:25 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
|
|||||||
* malloc/malloc-walk.c: Likewise.
|
* malloc/malloc-walk.c: Likewise.
|
||||||
* malloc/memalign.c: Likewise.
|
* malloc/memalign.c: Likewise.
|
||||||
|
|
||||||
|
Thu Sep 5 08:58:47 1996 Richard Henderson <rth@tamu.edu>
|
||||||
|
|
||||||
|
* sysdeps/alpha/elf/start.S: Make _start global again.
|
||||||
|
|
||||||
Thu Sep 5 03:20:42 1996 Ulrich Drepper <drepper@cygnus.com>
|
Thu Sep 5 03:20:42 1996 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
Change configuration and Makefiles to allow add-ons to have a
|
Change configuration and Makefiles to allow add-ons to have a
|
||||||
|
@ -59,7 +59,7 @@ dtable = dtable port2fd new-fd alloc-fd intern-fd \
|
|||||||
getdport openport \
|
getdport openport \
|
||||||
fd-close fd-read fd-write hurdioctl ctty-input ctty-output
|
fd-close fd-read fd-write hurdioctl ctty-input ctty-output
|
||||||
distribute = hurdstartup.h hurdfault.h hurdhost.h \
|
distribute = hurdstartup.h hurdfault.h hurdhost.h \
|
||||||
faultexc.defs intr-rpc.defs intr-rpc.h
|
faultexc.defs intr-rpc.defs intr-rpc.h intr-msg.h Notes
|
||||||
|
|
||||||
# XXX this is a temporary hack; see hurdmalloc.h
|
# XXX this is a temporary hack; see hurdmalloc.h
|
||||||
routines += hurdmalloc
|
routines += hurdmalloc
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
BEGIN { intr=0; wantcall=0; calls=""; }
|
|
||||||
|
|
||||||
$1 == "/*" && $2 == "INTR" && $3 == "*/" { intr=1; }
|
|
||||||
|
|
||||||
NF == 1 && $1 == "routine" { wantcall=1; next; }
|
|
||||||
|
|
||||||
intr != 0 && wantcall == 0 && NF >= 2 && $1 == "routine" \
|
|
||||||
{
|
|
||||||
if (substr($2, length($2)-2, 1) == "(")
|
|
||||||
calls = calls " " substr($2, 0, length($2)-1);
|
|
||||||
else calls = calls " " $2;
|
|
||||||
intr=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
wantcall != 0 && NF >= 1 \
|
|
||||||
{
|
|
||||||
if (substr($1, length($1)-2, 1) == "(")
|
|
||||||
calls = calls " " substr($1, 0, length($1)-1);
|
|
||||||
else calls = calls " " $1;
|
|
||||||
intr=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
{ wantcall=0; }
|
|
||||||
|
|
||||||
END { print varname " :=" calls; }
|
|
@ -1,45 +0,0 @@
|
|||||||
# Icky intimate knowledge of MiG output.
|
|
||||||
|
|
||||||
BEGIN \
|
|
||||||
{
|
|
||||||
nprotolines=0; proto=0;
|
|
||||||
args=""; echo=1; isintr=0;
|
|
||||||
intrcall = "__hurd_intr_rpc_" call;
|
|
||||||
print "#include <hurd/signal.h>";
|
|
||||||
}
|
|
||||||
|
|
||||||
$NF == intrcall { isintr=1; }
|
|
||||||
|
|
||||||
NF == 1 && $1 == ")" { proto=0; }
|
|
||||||
proto \
|
|
||||||
{
|
|
||||||
protolines[nprotolines++] = $0;
|
|
||||||
arg = $NF;
|
|
||||||
if (substr(arg, 1, 1) == "*")
|
|
||||||
arg = substr(arg, 2, length(arg)-1);
|
|
||||||
args = args arg;
|
|
||||||
}
|
|
||||||
NF == 1 && $1 == "(" { proto=1; }
|
|
||||||
|
|
||||||
NF == 3 && $1 == "InP->Head.msgh_request_port" \
|
|
||||||
{ portarg = substr($3, 1, length($3)-1); }
|
|
||||||
|
|
||||||
{ print $0; }
|
|
||||||
|
|
||||||
END \
|
|
||||||
{
|
|
||||||
if (isintr)
|
|
||||||
{
|
|
||||||
print "\n\n/* User-callable interrupt-handling stub. */";
|
|
||||||
print "kern_return_t __" call;
|
|
||||||
print "(";
|
|
||||||
for (i = 0; i < nprotolines; ++i)
|
|
||||||
print protolines[i];
|
|
||||||
print ")";
|
|
||||||
print "{";
|
|
||||||
print " return HURD_EINTR_RPC (" portarg ", " \
|
|
||||||
intrcall "(" args "));";
|
|
||||||
print "}";
|
|
||||||
}
|
|
||||||
print "weak_alias (__" call ", " call ")"
|
|
||||||
}
|
|
@ -56,7 +56,7 @@ tests := hello
|
|||||||
# `err_*.sub'. Leaving the wildcard allows Make-dist to find all matching
|
# `err_*.sub'. Leaving the wildcard allows Make-dist to find all matching
|
||||||
# files in all sysdep directories.
|
# files in all sysdep directories.
|
||||||
distribute += Machrules syscalls.awk shortcut.awk \
|
distribute += Machrules syscalls.awk shortcut.awk \
|
||||||
errorlib.h err_*.sub
|
errorlib.h err_*.sub errsystems.awk
|
||||||
|
|
||||||
|
|
||||||
# Clear any environment value.
|
# Clear any environment value.
|
||||||
|
@ -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));
|
|
||||||
}
|
|
@ -1,4 +1,5 @@
|
|||||||
/* 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.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -16,22 +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,
|
not, write to the Free Software Foundation, Inc., 675 Mass Ave,
|
||||||
Cambridge, MA 02139, USA. */
|
Cambridge, MA 02139, USA. */
|
||||||
|
|
||||||
#include <hurd.h>
|
const char *
|
||||||
#include <hurd/fs.h>
|
_dl_load_cache_lookup (const char *name)
|
||||||
|
|
||||||
error_t
|
|
||||||
__hurd_invoke_translator (file_t file, int flags, file_t *newport)
|
|
||||||
{
|
{
|
||||||
error_t err;
|
return 0;
|
||||||
enum retry_type doretry;
|
|
||||||
char retryname[1024]; /* XXX string_t LOSES! */
|
|
||||||
|
|
||||||
err = __file_invoke_translator (file, flags, &doretry, retryname, newport);
|
|
||||||
|
|
||||||
if (! err)
|
|
||||||
err = __USEPORT (CRDIR, __hurd_file_name_lookup_retry (port,
|
|
||||||
doretry, retryname,
|
|
||||||
flags, 0, newport));
|
|
||||||
|
|
||||||
return err;
|
|
||||||
}
|
}
|
@ -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;
|
|
||||||
}
|
|
@ -1,35 +0,0 @@
|
|||||||
/* Perform a `longjmp' on a `struct sigcontext'. 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 <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_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;
|
|
||||||
}
|
|
@ -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;
|
|
||||||
}
|
|
@ -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;
|
|
||||||
}
|
|
@ -1,38 +0,0 @@
|
|||||||
/* Set up a thread_state for proc_handle_exceptions. Stub 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.h>
|
|
||||||
#include <mach/thread_status.h>
|
|
||||||
|
|
||||||
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 hurd_thread_state *ts = state;
|
|
||||||
memset (ts, 0, sizeof (*ts));
|
|
||||||
/* Point the SP in TS at the fault stack,
|
|
||||||
and set the PC to run `faulted' (above). */
|
|
||||||
#error "Need to write sysdeps/mach/hurd/MACHINE/init_fault.c"
|
|
||||||
}
|
|
@ -1,32 +0,0 @@
|
|||||||
/* Perform a `longjmp' on a `struct sigcontext'. Stub 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 <signal.h>
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
void
|
|
||||||
_hurd_longjmp_sigcontext (struct sigcontext *scp, jmp_buf env, int retval)
|
|
||||||
{
|
|
||||||
memset (scp, 0, sizeof (*scp));
|
|
||||||
/* Set all the registers in *SCP to the values described by ENV and RETVAL.
|
|
||||||
After this, calling `__sigreturn (SCP)' in that thread should be just
|
|
||||||
like calling `longjmp (ENV, RETVAL)'. */
|
|
||||||
#error "Need to write sysdeps/mach/hurd/MACHINE/longjmp-ctx.c"
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user