*** 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:
Thomas Bushnell, BSG 1996-09-11 02:48:08 +00:00
parent da74e90200
commit 158ff48e34
14 changed files with 30 additions and 360 deletions

View File

@ -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

View File

@ -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

View File

@ -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; }

View File

@ -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 ")"
}

View File

@ -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.

View File

@ -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));
}

View File

@ -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;
} }

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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"
}

View File

@ -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"
}