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.
|
||||
|
||||
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>
|
||||
|
||||
* 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
|
||||
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>
|
||||
|
||||
* 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/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>
|
||||
|
||||
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 \
|
||||
fd-close fd-read fd-write hurdioctl ctty-input ctty-output
|
||||
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
|
||||
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
|
||||
# files in all sysdep directories.
|
||||
distribute += Machrules syscalls.awk shortcut.awk \
|
||||
errorlib.h err_*.sub
|
||||
errorlib.h err_*.sub errsystems.awk
|
||||
|
||||
|
||||
# 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.
|
||||
|
||||
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,
|
||||
Cambridge, MA 02139, USA. */
|
||||
|
||||
#include <hurd.h>
|
||||
#include <hurd/fs.h>
|
||||
|
||||
error_t
|
||||
__hurd_invoke_translator (file_t file, int flags, file_t *newport)
|
||||
const char *
|
||||
_dl_load_cache_lookup (const char *name)
|
||||
{
|
||||
error_t err;
|
||||
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;
|
||||
return 0;
|
||||
}
|
@ -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