diff options
author | Joseph Myers <joseph@codesourcery.com> | 2014-02-08 01:17:28 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2014-02-08 01:17:28 +0000 |
commit | 852fa2dd3aa1a687780e27300df9eb0bdc433863 (patch) | |
tree | 6be84f138325bf6e209a2166e59204ce0da0d0a2 | |
parent | 464263cc00549d2597b6d25309d55b1e4a6b1aac (diff) | |
download | glibc-852fa2dd3aa1a687780e27300df9eb0bdc433863.tar.gz glibc-852fa2dd3aa1a687780e27300df9eb0bdc433863.tar.xz glibc-852fa2dd3aa1a687780e27300df9eb0bdc433863.zip |
Move shared sysdeps files from alpha to arm.
This patch prepares for moving arm from ports to libc (see overall plan at <https://sourceware.org/ml/libc-alpha/2014-01/msg00373.html> and discussion of ordering starting at <https://sourceware.org/ml/libc-ports/2014-01/msg00071.html>) by reversing the #include order between arm and alpha, so that arm can move early as a test for the general pattern of moving architectures. MicroBlaze files (that used the same alpha files) were made to include the files directly from their new locations rather than indirecting. Tested that disassembly of installed shared libraries for arm is the same before and after this patch. * sysdeps/unix/sysv/linux/alpha/msgctl.c: Move to sysdeps/unix/sysv/linux/arm/msgctl.c and #include that file. * sysdeps/unix/sysv/linux/alpha/semctl.c: Move to sysdeps/unix/sysv/linux/arm/semctl.c and #include that file. * sysdeps/unix/sysv/linux/alpha/shmctl.c: Move to sysdeps/unix/sysv/linux/arm/shmctl.c and #include that file. * sysdeps/unix/sysv/linux/arm/msgctl.c: Move from sysdeps/unix/sysv/linux/alpha/msgctl.c instead of #include of that file. * sysdeps/unix/sysv/linux/arm/semctl.c: Move from sysdeps/unix/sysv/linux/alpha/semctl.c instead of #include of that file. * sysdeps/unix/sysv/linux/arm/shmctl.c: Move from sysdeps/unix/sysv/linux/alpha/shmctl.c instead of #include of that file. * sysdeps/unix/sysv/linux/microblaze/msgctl.c: Include sysdeps/unix/sysv/linux/arm/msgctl.c instead of sysdeps/unix/sysv/linux/alpha/msgctl.c. * sysdeps/unix/sysv/linux/microblaze/semctl.c: Include sysdeps/unix/sysv/linux/arm/semctl.c instead of sysdeps/unix/sysv/linux/alpha/semctl.c. * sysdeps/unix/sysv/linux/microblaze/shmctl.c: Include sysdeps/unix/sysv/linux/arm/shmctl.c instead of sysdeps/unix/sysv/linux/alpha/shmctl.c.
-rw-r--r-- | ports/ChangeLog.alpha | 9 | ||||
-rw-r--r-- | ports/ChangeLog.arm | 12 | ||||
-rw-r--r-- | ports/ChangeLog.microblaze | 12 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/alpha/msgctl.c | 34 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/alpha/semctl.c | 55 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/alpha/shmctl.c | 35 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/arm/msgctl.c | 34 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/arm/semctl.c | 55 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/arm/shmctl.c | 35 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c | 2 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/microblaze/semctl.c | 2 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c | 2 |
12 files changed, 160 insertions, 127 deletions
diff --git a/ports/ChangeLog.alpha b/ports/ChangeLog.alpha index 92be2924d2..5d79445655 100644 --- a/ports/ChangeLog.alpha +++ b/ports/ChangeLog.alpha @@ -1,3 +1,12 @@ +2014-02-08 Joseph Myers <joseph@codesourcery.com> + + * sysdeps/unix/sysv/linux/alpha/msgctl.c: Move to + sysdeps/unix/sysv/linux/arm/msgctl.c and #include that file. + * sysdeps/unix/sysv/linux/alpha/semctl.c: Move to + sysdeps/unix/sysv/linux/arm/semctl.c and #include that file. + * sysdeps/unix/sysv/linux/alpha/shmctl.c: Move to + sysdeps/unix/sysv/linux/arm/shmctl.c and #include that file. + 2014-01-24 Richard Henderson <rth@redhat.com> * sysdeps/alpha/fpu/libm-test-ulps: Update. diff --git a/ports/ChangeLog.arm b/ports/ChangeLog.arm index 51bb76b992..d23a6cca55 100644 --- a/ports/ChangeLog.arm +++ b/ports/ChangeLog.arm @@ -1,3 +1,15 @@ +2014-02-08 Joseph Myers <joseph@codesourcery.com> + + * sysdeps/unix/sysv/linux/arm/msgctl.c: Move from + sysdeps/unix/sysv/linux/alpha/msgctl.c instead of #include of that + file. + * sysdeps/unix/sysv/linux/arm/semctl.c: Move from + sysdeps/unix/sysv/linux/alpha/semctl.c instead of #include of that + file. + * sysdeps/unix/sysv/linux/arm/shmctl.c: Move from + sysdeps/unix/sysv/linux/alpha/shmctl.c instead of #include of that + file. + 2014-01-24 Will Newton <will.newton@linaro.org> [BZ #16499] diff --git a/ports/ChangeLog.microblaze b/ports/ChangeLog.microblaze index 1c5bc996b1..a2a35c6054 100644 --- a/ports/ChangeLog.microblaze +++ b/ports/ChangeLog.microblaze @@ -1,3 +1,15 @@ +2014-02-08 Joseph Myers <joseph@codesourcery.com> + + * sysdeps/unix/sysv/linux/microblaze/msgctl.c: Include + sysdeps/unix/sysv/linux/arm/msgctl.c instead of + sysdeps/unix/sysv/linux/alpha/msgctl.c. + * sysdeps/unix/sysv/linux/microblaze/semctl.c: Include + sysdeps/unix/sysv/linux/arm/semctl.c instead of + sysdeps/unix/sysv/linux/alpha/semctl.c. + * sysdeps/unix/sysv/linux/microblaze/shmctl.c: Include + sysdeps/unix/sysv/linux/arm/shmctl.c instead of + sysdeps/unix/sysv/linux/alpha/shmctl.c. + 2014-02-04 David Holsgrove <david.holsgrove@xilinx.com> * sysdeps/microblaze/libm-test-ulps: Update. diff --git a/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c b/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c index a0b6cb4372..d65a5b93d6 100644 --- a/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c +++ b/ports/sysdeps/unix/sysv/linux/alpha/msgctl.c @@ -1,33 +1 @@ -/* Copyright (C) 1995-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995. - - 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 <errno.h> -#include <sys/msg.h> -#include <ipc_priv.h> -#include <sysdep.h> -#include <sys/syscall.h> - - -int -__new_msgctl (int msqid, int cmd, struct msqid_ds *buf) -{ - return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, buf); -} - -#include <shlib-compat.h> -versioned_symbol (libc, __new_msgctl, msgctl, GLIBC_2_2); +#include <sysdeps/unix/sysv/linux/arm/msgctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/alpha/semctl.c b/ports/sysdeps/unix/sysv/linux/alpha/semctl.c index a45863bd82..4cb834ad97 100644 --- a/ports/sysdeps/unix/sysv/linux/alpha/semctl.c +++ b/ports/sysdeps/unix/sysv/linux/alpha/semctl.c @@ -1,54 +1 @@ -/* Copyright (C) 1995-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995. - - 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 <errno.h> -#include <stdarg.h> -#include <sys/sem.h> -#include <ipc_priv.h> -#include <sysdep.h> -#include <sys/syscall.h> - - -/* Define a `union semun' suitable for Linux here. */ -union semun -{ - int val; /* value for SETVAL */ - struct semid_ds *buf; /* buffer for IPC_STAT & IPC_SET */ - unsigned short int *array; /* array for GETALL & SETALL */ - struct seminfo *__buf; /* buffer for IPC_INFO */ -}; - -int -__new_semctl (int semid, int semnum, int cmd, ...) -{ - union semun arg; - va_list ap; - - va_start (ap, cmd); - - /* Get the argument. */ - arg = va_arg (ap, union semun); - - va_end (ap); - - return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64, - arg.array); -} - -#include <shlib-compat.h> -versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2); +#include <sysdeps/unix/sysv/linux/arm/semctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c b/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c index eed4c8dcef..f73ed6f246 100644 --- a/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c +++ b/ports/sysdeps/unix/sysv/linux/alpha/shmctl.c @@ -1,34 +1 @@ -/* Copyright (C) 1995-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995. - - 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 <errno.h> -#include <sys/shm.h> -#include <ipc_priv.h> -#include <sysdep.h> -#include <sys/syscall.h> -#include <bits/wordsize.h> - - -int -__new_shmctl (int shmid, int cmd, struct shmid_ds *buf) -{ - return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, buf); -} - -#include <shlib-compat.h> -versioned_symbol (libc, __new_shmctl, shmctl, GLIBC_2_2); +#include <sysdeps/unix/sysv/linux/arm/shmctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/arm/msgctl.c b/ports/sysdeps/unix/sysv/linux/arm/msgctl.c index 38aedadf49..a0b6cb4372 100644 --- a/ports/sysdeps/unix/sysv/linux/arm/msgctl.c +++ b/ports/sysdeps/unix/sysv/linux/arm/msgctl.c @@ -1 +1,33 @@ -#include <sysdeps/unix/sysv/linux/alpha/msgctl.c> +/* Copyright (C) 1995-2014 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995. + + 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 <errno.h> +#include <sys/msg.h> +#include <ipc_priv.h> +#include <sysdep.h> +#include <sys/syscall.h> + + +int +__new_msgctl (int msqid, int cmd, struct msqid_ds *buf) +{ + return INLINE_SYSCALL (msgctl, 3, msqid, cmd | __IPC_64, buf); +} + +#include <shlib-compat.h> +versioned_symbol (libc, __new_msgctl, msgctl, GLIBC_2_2); diff --git a/ports/sysdeps/unix/sysv/linux/arm/semctl.c b/ports/sysdeps/unix/sysv/linux/arm/semctl.c index 145162909c..a45863bd82 100644 --- a/ports/sysdeps/unix/sysv/linux/arm/semctl.c +++ b/ports/sysdeps/unix/sysv/linux/arm/semctl.c @@ -1 +1,54 @@ -#include <sysdeps/unix/sysv/linux/alpha/semctl.c> +/* Copyright (C) 1995-2014 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995. + + 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 <errno.h> +#include <stdarg.h> +#include <sys/sem.h> +#include <ipc_priv.h> +#include <sysdep.h> +#include <sys/syscall.h> + + +/* Define a `union semun' suitable for Linux here. */ +union semun +{ + int val; /* value for SETVAL */ + struct semid_ds *buf; /* buffer for IPC_STAT & IPC_SET */ + unsigned short int *array; /* array for GETALL & SETALL */ + struct seminfo *__buf; /* buffer for IPC_INFO */ +}; + +int +__new_semctl (int semid, int semnum, int cmd, ...) +{ + union semun arg; + va_list ap; + + va_start (ap, cmd); + + /* Get the argument. */ + arg = va_arg (ap, union semun); + + va_end (ap); + + return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64, + arg.array); +} + +#include <shlib-compat.h> +versioned_symbol (libc, __new_semctl, semctl, GLIBC_2_2); diff --git a/ports/sysdeps/unix/sysv/linux/arm/shmctl.c b/ports/sysdeps/unix/sysv/linux/arm/shmctl.c index c121e99917..eed4c8dcef 100644 --- a/ports/sysdeps/unix/sysv/linux/arm/shmctl.c +++ b/ports/sysdeps/unix/sysv/linux/arm/shmctl.c @@ -1 +1,34 @@ -#include <sysdeps/unix/sysv/linux/alpha/shmctl.c> +/* Copyright (C) 1995-2014 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995. + + 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 <errno.h> +#include <sys/shm.h> +#include <ipc_priv.h> +#include <sysdep.h> +#include <sys/syscall.h> +#include <bits/wordsize.h> + + +int +__new_shmctl (int shmid, int cmd, struct shmid_ds *buf) +{ + return INLINE_SYSCALL (shmctl, 3, shmid, cmd | __IPC_64, buf); +} + +#include <shlib-compat.h> +versioned_symbol (libc, __new_shmctl, shmctl, GLIBC_2_2); diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c b/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c index 38aedadf49..d65a5b93d6 100644 --- a/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c +++ b/ports/sysdeps/unix/sysv/linux/microblaze/msgctl.c @@ -1 +1 @@ -#include <sysdeps/unix/sysv/linux/alpha/msgctl.c> +#include <sysdeps/unix/sysv/linux/arm/msgctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c b/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c index 145162909c..4cb834ad97 100644 --- a/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c +++ b/ports/sysdeps/unix/sysv/linux/microblaze/semctl.c @@ -1 +1 @@ -#include <sysdeps/unix/sysv/linux/alpha/semctl.c> +#include <sysdeps/unix/sysv/linux/arm/semctl.c> diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c b/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c index c121e99917..f73ed6f246 100644 --- a/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c +++ b/ports/sysdeps/unix/sysv/linux/microblaze/shmctl.c @@ -1 +1 @@ -#include <sysdeps/unix/sysv/linux/alpha/shmctl.c> +#include <sysdeps/unix/sysv/linux/arm/shmctl.c> |