This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Remove unused sysdeps/unix/i386 files
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: libc-alpha at sourceware dot org
- Cc: Thomas Schwinge <thomas at codesourcery dot com>
- Date: Thu, 26 Apr 2012 16:25:30 +0000 (UTC)
- Subject: Remove unused sysdeps/unix/i386 files
Most of the system-call-related files in sysdeps/unix/i386/ appear to
be unused.
On Linux, brk.S is overridden by sysdeps/unix/sysv/linux/i386/brk.c
and dl-brk.c by sysdeps/unix/sysv/linux/dl-brk.c; pipe.S by the
sysdeps/unix/sysv/linux/syscalls.list entry; sigreturn.S by
sysdeps/unix/sysv/linux/sigreturn.c; syscall.S by
sysdeps/unix/sysv/linux/i386/syscall.S; vfork.S by
sysdeps/unix/sysv/linux/i386/vfork.S and the NPTL version thereof;
wait.S by sysdeps/unix/sysv/linux/wait.c.
I'm not sure if Hurd ends up using sysdeps/unix/i386 at all, but all
these files are clearly related to Unix-style syscall conventions and
so inapplicable to Hurd, which I think will end up using
sysdeps/mach/hurd/brk.c, elf/dl-brk.c, sysdeps/mach/hurd/pipe.c,
sysdeps/mach/hurd/i386/sigreturn.c, sysdeps/mach/i386/syscall.S,
posix/vfork.c or sysdeps/unix/bsd/i386/vfork.S, and
sysdeps/unix/bsd/bsd4.4/wait.c.
I propose this patch to remove these files as unused. Tested x86.
2012-04-26 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/i386/brk.S: Remove file.
* sysdeps/unix/i386/dl-brk.S: Likewise.
* sysdeps/unix/i386/pipe.S: Likewise.
* sysdeps/unix/i386/sigreturn.S: Likewise.
* sysdeps/unix/i386/syscall.S: Likewise.
* sysdeps/unix/i386/vfork.S: Likewise.
* sysdeps/unix/i386/wait.S: Likewise.
diff --git a/sysdeps/unix/i386/brk.S b/sysdeps/unix/i386/brk.S
deleted file mode 100644
index bb1f4e5..0000000
--- a/sysdeps/unix/i386/brk.S
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright (C) 1991,92,93,95,97,2002,2005 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 Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-#ifndef SYS_brk
-#define SYS_brk 17
-#endif
-
-.data
-.globl C_SYMBOL_NAME(__curbrk)
-C_LABEL(__curbrk)
- .long C_SYMBOL_NAME(_end)
-
-.text
-SYSCALL__ (brk, 1)
- movl 4(%esp), %eax
-#ifdef PIC
- /* Standard PIC nonsense to store into `__curbrk' through the GOT. */
- call L(here)
-L(here): popl %ecx
- addl $_GLOBAL_OFFSET_TABLE_+[.-L(here)], %ecx
- movl C_SYMBOL_NAME(__curbrk@GOT)(%ecx), %ecx
- movl %eax, (%ecx)
-#else
- movl %eax, C_SYMBOL_NAME(__curbrk)
-#endif
- xorl %eax, %eax
- ret
-PSEUDO_END (__brk)
-
-weak_alias (__brk, brk)
diff --git a/sysdeps/unix/i386/dl-brk.S b/sysdeps/unix/i386/dl-brk.S
deleted file mode 100644
index eeb9654..0000000
--- a/sysdeps/unix/i386/dl-brk.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <brk.S>
diff --git a/sysdeps/unix/i386/pipe.S b/sysdeps/unix/i386/pipe.S
deleted file mode 100644
index 0ca44d7..0000000
--- a/sysdeps/unix/i386/pipe.S
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 1991,92,93,95,97,2002 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 Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-SYSCALL__ (pipe, 1)
- movl 4(%esp), scratch
- movl %eax, (scratch)
- movl r1, 4(scratch)
- xorl %eax, %eax
- ret
-PSEUDO_END (__pipe)
-
-libc_hidden_def (__pipe)
-weak_alias (__pipe, pipe)
diff --git a/sysdeps/unix/i386/sigreturn.S b/sysdeps/unix/i386/sigreturn.S
deleted file mode 100644
index 33fe17e..0000000
--- a/sysdeps/unix/i386/sigreturn.S
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright (C) 1992, 1993, 1995, 1997 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 Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-.text
-ENTRY (__sigreturn)
- addl $4, %esp /* Pop the return PC. */
- DO_CALL (sigreturn, 0) /* Do the system call; it never returns. */
- /* NOTREACHED */
-
-weak_alias (__sigreturn, sigreturn)
diff --git a/sysdeps/unix/i386/syscall.S b/sysdeps/unix/i386/syscall.S
deleted file mode 100644
index e93926b..0000000
--- a/sysdeps/unix/i386/syscall.S
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright (C) 1993, 1995, 1997 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 Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-.globl syscall_error
-ENTRY (syscall)
- popl %ecx /* Pop return address into %ecx. */
- popl %eax /* Pop syscall number into %eax. */
- pushl %ecx /* Push back return address. */
- .byte 0x9a, 0, 0, 0, 0, 7, 0 /* lcall $7, $0 -- gas bug */
- jb JUMPTARGET(syscall_error)
- ret
diff --git a/sysdeps/unix/i386/vfork.S b/sysdeps/unix/i386/vfork.S
deleted file mode 100644
index 7f8a629..0000000
--- a/sysdeps/unix/i386/vfork.S
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright (C) 1994, 1997 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 Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-/* Go directly into __vfork, don't do anything with the stack ptr. */
-
-ENTRY(vfork)
- jmp __vfork
diff --git a/sysdeps/unix/i386/wait.S b/sysdeps/unix/i386/wait.S
deleted file mode 100644
index b107ebb..0000000
--- a/sysdeps/unix/i386/wait.S
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (C) 1991,92,93,95,97,2002 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 Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-SYSCALL__ (wait, 1)
- movl 4(%esp), scratch /* Put status pointer in scratch register. */
- testl scratch, scratch /* Is it non-nil? */
- je null
- movl r1, (scratch) /* Yes; store the status there. */
-null: ret
-PSEUDO_END (__wait)
-
-weak_alias (__wait, wait)
--
Joseph S. Myers
joseph@codesourcery.com