diff options
author | Ulrich Drepper <drepper@redhat.com> | 1996-10-22 23:29:26 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1996-10-22 23:29:26 +0000 |
commit | 6ed0492f8e47e2d0859105ab0f758b806853125b (patch) | |
tree | e170d5de9cfc380e13aef2c0393aa793a9423a16 /sysdeps/unix/sysv/linux/m68k | |
parent | 769e8a82da08831123a4b78b4bfab2c0ec042183 (diff) | |
download | glibc-6ed0492f8e47e2d0859105ab0f758b806853125b.tar.gz glibc-6ed0492f8e47e2d0859105ab0f758b806853125b.tar.xz glibc-6ed0492f8e47e2d0859105ab0f758b806853125b.zip |
update from main archvie 961022 cvs/libc-961028 cvs/libc-961027 cvs/libc-961026 cvs/libc-961025 cvs/libc-961024 cvs/libc-961023
Tue Oct 22 21:38:21 1996 Ulrich Drepper <drepper@cygnus.com> * version.h: Bump version number to 1.97. * features.h: Undo change of Sun Oct 20 22:19:58 1996. Include libc-version.h. * features.h.in: Removed. * Makefile: Change rules to generate libc-version.h instead of features.h. * malloc/free.c: Add cast to prevent warning. * malloc/malloc-walk.c: Likewise. * malloc/ralloc.c: Likewise. * malloc/realloc.c: Likewise. * grp/fgetgrent_r.c: Accept empty numeric field if name start with + or -. * pwd/fgetpwent_r.c: Likewise. * nss/nss_files/files-grp.c: Don't accept entries with names starting with + or - in lookup functions. * nss/nss_files/files-pwd.c: Likewise. * Makerules: Call autolock.sh using $(SHELL). Mon Oct 21 22:52:16 1996 NIIBE Yutaka <gniibe@mri.co.jp> * elf/dl-minimal.c: Don't define `dgettext' replacement but `dcgettext'. When optimizing the macros in <libintl.h> define `dgettext' as a macro and so this function will never be called. Mon Oct 21 15:41:59 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/i386/sysdep.h: Define END to use .size when available. (PSEUDO_END): Use END. * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_END to define SYSCALL_ERROR_HANDLER before using END. (SYSCALL_ERROR_HANDLER): Don't use .size directive. * sysdeps/unix/sysv/linux/clone.S: Don't use SYSCALL_ERROR_HANDLER and .size directive but PSEUDO_END. * sysdeps/unix/sysv/linux/mmap.S: Likewise. * sysdeps/unix/sysv/linux/socket.S: Likewise. * sysdeps/unix/sysv/linux/syscall.S: Likewise. * sysdeps/unix/sysv/linux/sysdep.S (__errno_location): Use END. * sysdeps/unix/i386/sysdep.S (__syscall_error): Likewise. * sysdeps/i386/__longjmp.S: Use END instead of PSEUDO_END. * sysdeps/i386/bsd-_setjmp.S: Likewise. * sysdeps/i386/bsd-setjmp.S: Likewise. * sysdeps/i386/memchr.S: Likewise. * sysdeps/i386/memcmp.S: Likewise. * sysdeps/i386/setjmp.S: Likewise. * sysdeps/i386/stpcpy.S: Likewise. * sysdeps/i386/stpncpy.S: Likewise. * sysdeps/i386/strchr.S: Likewise. * sysdeps/i386/strcspn.S: Likewise. * sysdeps/i386/strpbrk.S: Likewise. * sysdeps/i386/strrchr.S: Likewise. * sysdeps/i386/strspn.S: Likewise. * sysdeps/i386/strtok.S: Likewise. * sysdeps/i386/i486/strcat.S: Likewise. * sysdeps/i386/i486/strlen.S: Likewise. * sysdeps/i386/i586/memset.S: Likewise. * sysdeps/i386/i586/strchr.S: Likewise. * sysdeps/i386/i586/strlen.S: Likewise. * sysdeps/i386/strlen.c: De-ANSI-fy. * sysdeps/generic/_strerror.c: Undo change of Mon Oct 21 01:32:36 1996. Define dgettext if not defined to use dcgettext. * sysdeps/mach/_strerror.c: Likewise. * sysdeps/unix/sysv/i386/time.S: Add PSEUDO_END to get __syscall_error defined.. Sat Oct 19 12:27:50 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/m68k/mmap.S: Fix braino: CALL_MCOUNT is already included in the ENTRY macro. Remove SYSCALL_ERROR_HANDLER now provided by PSEUDO_END. * sysdeps/unix/sysv/linux/m68k/sigreturn.S: Likewise. * sysdeps/unix/sysv/linux/m68k/socket.S: Likewise. * sysdeps/unix/sysv/linux/m68k/syscall.S: Likewise. * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise. * sysdeps/unix/sysv/linux/m68k/clone.S: Likewise. Use JUMPTARGET. * sysdeps/generic/sysdep.h (END): Provide default empty definition. * sysdeps/unix/sysv/linux/m68k/sysdep.h (END): Redefine to use size directive. (PSEUDO): Don't include SYSCALL_ERROR_HANDLER. (PSEUDO_END): Include it here instead. (SYSCALL_ERROR_HANDLER): Remove type directive. * sysdeps/m68k/bsd-_setjmp.S: Use END, not PSEUDO_END. * sysdeps/m68k/bsd-setjmp.S: Likewise. * sysdeps/unix/sysv/linux/m68k/sigreturn.S: Likewise. * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise. (__syscall_error): Can't use ENTRY macro. Sat Oct 19 12:13:24 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/syscalls.list (getresuid, setresuid): Set caller to EXTRA. O_SHLOCK. Tue Oct 15 14:37:40 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * sysdeps/mach/hurd/fcntlbits.h (O_HURD): Add O_EXLOCK and
Diffstat (limited to 'sysdeps/unix/sysv/linux/m68k')
-rw-r--r-- | sysdeps/unix/sysv/linux/m68k/clone.S | 10 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/m68k/mmap.S | 3 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/m68k/sigreturn.S | 4 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/m68k/socket.S | 3 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/m68k/syscall.S | 3 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/m68k/sysdep.S | 10 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/m68k/sysdep.h | 10 |
7 files changed, 15 insertions, 28 deletions
diff --git a/sysdeps/unix/sysv/linux/m68k/clone.S b/sysdeps/unix/sysv/linux/m68k/clone.S index 4dcd90e96c..4465dd8f68 100644 --- a/sysdeps/unix/sysv/linux/m68k/clone.S +++ b/sysdeps/unix/sysv/linux/m68k/clone.S @@ -27,7 +27,6 @@ Cambridge, MA 02139, USA. */ .text ENTRY (__clone) - CALL_MCOUNT /* Sanity check arguments. */ movel #-EINVAL, %d0 @@ -63,17 +62,12 @@ ENTRY (__clone) rts - SYSCALL_ERROR_HANDLER - thread_start: subl %fp, %fp /* terminate the stack frame */ jsr (%a0) movel %d0, -(%sp) -#ifdef PIC - bsrl _exit@PLTPC -#else - jbsr _exit -#endif + jbsr JUMPTARGET (_exit) + PSEUDO_END (__clone) weak_alias (__clone, clone) diff --git a/sysdeps/unix/sysv/linux/m68k/mmap.S b/sysdeps/unix/sysv/linux/m68k/mmap.S index 9bac533d44..257ff4da28 100644 --- a/sysdeps/unix/sysv/linux/m68k/mmap.S +++ b/sysdeps/unix/sysv/linux/m68k/mmap.S @@ -19,10 +19,7 @@ Cambridge, MA 02139, USA. */ #include <sysdep.h> .text - SYSCALL_ERROR_HANDLER - ENTRY (__mmap) - CALL_MCOUNT move.l #SYS_ify (mmap), %d0 /* System call number in %d0. */ diff --git a/sysdeps/unix/sysv/linux/m68k/sigreturn.S b/sysdeps/unix/sysv/linux/m68k/sigreturn.S index 04f0db553c..0971acd20e 100644 --- a/sysdeps/unix/sysv/linux/m68k/sigreturn.S +++ b/sysdeps/unix/sysv/linux/m68k/sigreturn.S @@ -20,12 +20,10 @@ Cambridge, MA 02139, USA. */ .text ENTRY (__sigreturn) - CALL_MCOUNT - addq.l #4, %sp /* Pop the return PC. */ DO_CALL (#SYS_ify (sigreturn), 0) /* Do the system call; it never returns. */ /* NOTREACHED */ -PSEUDO_END (__sigreturn) +END (__sigreturn) weak_alias (__sigreturn, sigreturn) diff --git a/sysdeps/unix/sysv/linux/m68k/socket.S b/sysdeps/unix/sysv/linux/m68k/socket.S index 1294287cce..d0741afeb1 100644 --- a/sysdeps/unix/sysv/linux/m68k/socket.S +++ b/sysdeps/unix/sysv/linux/m68k/socket.S @@ -23,8 +23,6 @@ Cambridge, MA 02139, USA. */ #define P2(a, b) a##b .text - SYSCALL_ERROR_HANDLER - /* The socket-oriented system calls are handled unusally in Linux. They are all gated through the single `socketcall' system call number. `socketcall' takes two arguments: the first is the subcode, specifying @@ -35,7 +33,6 @@ Cambridge, MA 02139, USA. */ .globl P(__,socket) ENTRY (P(__,socket)) - CALL_MCOUNT /* Save registers. */ move.l %d2, %a0 diff --git a/sysdeps/unix/sysv/linux/m68k/syscall.S b/sysdeps/unix/sysv/linux/m68k/syscall.S index 1c7bd6bbd1..b7417aa911 100644 --- a/sysdeps/unix/sysv/linux/m68k/syscall.S +++ b/sysdeps/unix/sysv/linux/m68k/syscall.S @@ -22,10 +22,7 @@ Cambridge, MA 02139, USA. */ more information about the value -128 used below.*/ .text - SYSCALL_ERROR_HANDLER ENTRY (syscall) - CALL_MCOUNT - move.l 4(%sp), %d0 /* Load syscall number. */ _DOARGS_5 (24) /* Frob arguments. */ trap &0 /* Do the system call. */ diff --git a/sysdeps/unix/sysv/linux/m68k/sysdep.S b/sysdeps/unix/sysv/linux/m68k/sysdep.S index 31fa20f55d..848ece58e8 100644 --- a/sysdeps/unix/sysv/linux/m68k/sysdep.S +++ b/sysdeps/unix/sysv/linux/m68k/sysdep.S @@ -46,7 +46,10 @@ __errno = errno /* This name is expected by the MT code. */ /* The syscall stubs jump here when they detect an error. */ -ENTRY (__syscall_error) + .globl __syscall_error + .type __syscall_error, @function + .align 4 +__syscall_error: neg.l %d0 move.l %d0, errno #ifdef _LIBC_REENTRANT @@ -59,15 +62,14 @@ ENTRY (__syscall_error) return a pointer. */ move.l %d0, %a0 rts -PSEUDO_END (__syscall_error) +END (__syscall_error) #endif /* PIC */ ENTRY (__errno_location) - CALL_MCOUNT #ifdef PIC move.l (%pc, errno@GOTPC), %a0 #else lea errno, %a0 #endif rts -PSEUDO_END (__errno_location) +END (__errno_location) diff --git a/sysdeps/unix/sysv/linux/m68k/sysdep.h b/sysdeps/unix/sysv/linux/m68k/sysdep.h index 9cddd20552..3366caab45 100644 --- a/sysdeps/unix/sysv/linux/m68k/sysdep.h +++ b/sysdeps/unix/sysv/linux/m68k/sysdep.h @@ -41,6 +41,9 @@ Cambridge, MA 02139, USA. */ C_LABEL(name) \ CALL_MCOUNT +#undef END +#define END(name) .size name, . - name + /* If compiled for profiling, call `_mcount' at the start of each function. */ #ifdef PROF /* The mcount code relies on a normal frame pointer being on the stack @@ -76,7 +79,6 @@ Cambridge, MA 02139, USA. */ error values. */ #define PSEUDO(name, syscall_name, args) \ .text; \ - SYSCALL_ERROR_HANDLER \ ENTRY (name) \ DO_CALL (&SYS_ify (syscall_name), args); \ moveq.l &-128, %d1; \ @@ -84,13 +86,14 @@ Cambridge, MA 02139, USA. */ jcc syscall_error #undef PSEUDO_END -#define PSEUDO_END(name) .size name, . - name +#define PSEUDO_END(name) \ + SYSCALL_ERROR_HANDLER; \ + END (name) #ifdef PIC /* Store (- %d0) into errno through the GOT. */ #ifdef _LIBC_REENTRANT #define SYSCALL_ERROR_HANDLER \ - .type syscall_error, @function; \ syscall_error: \ move.l (errno@GOTPC, %pc), %a0; \ neg.l %d0; \ @@ -105,7 +108,6 @@ syscall_error: \ rts; #else #define SYSCALL_ERROR_HANDLER \ - .type syscall_error, @function; \ syscall_error: \ move.l (errno@GOTPC, %pc), %a0; \ neg.l %d0; \ |