This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 3/3] PowerPC: Cleanup powerpc memmove
- From: Adhemerval Zanella <azanella at linux dot vnet dot ibm dot com>
- To: libc-alpha at sourceware dot org
- Date: Tue, 08 Jul 2014 11:35:24 -0300
- Subject: Re: [PATCH 3/3] PowerPC: Cleanup powerpc memmove
- Authentication-results: sourceware.org; auth=none
- References: <53BC00E6 dot 6050604 at linux dot vnet dot ibm dot com>
Forgot to add on title description that is has been committed.
On 08-07-2014 11:32, Adhemerval Zanella wrote:
> Now that MEMCPY_OK_FOR_FWD_MEMMOVE should be define on memcopy.h there
> is no need for specialized powerpc memmove implementation. This patch
> moves the define set to powerpc memcopy and cleanup its definition on
> powerpc code.
>
> --
>
> * sysdeps/powerpc/memmove.c: Remove file.
> * sysdeps/powerpc/powerpc32/power4/memcopy.h
> [MEMCPY_OK_FOR_FWD_MEMMOVE]: Define it to 1.
> * sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
> [MEMCPY_OK_FOR_FWD_MEMMOVE]: Remove define.
> * sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c:
> [MEMCPY_OK_FOR_FWD_MEMMOVE]: Likewise.
> * sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c: Include default
> string memmove instead of removed powerpc one.
>
> ---
>
> diff --git a/sysdeps/powerpc/memmove.c b/sysdeps/powerpc/memmove.c
> deleted file mode 100644
> index 9c62ecb..0000000
> --- a/sysdeps/powerpc/memmove.c
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -/* Copy memory to memory until the specified number of bytes
> - has been copied. Overlap is handled correctly.
> - Copyright (C) 1991-2014 Free Software Foundation, Inc.
> - This file is part of the GNU C Library.
> - Contributed by Torbjorn Granlund (tege@sics.se).
> -
> - 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; see the file COPYING.LIB. If
> - not, see <http://www.gnu.org/licenses/>. */
> -
> -#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
> -#include <string/memmove.c>
> diff --git a/sysdeps/powerpc/powerpc32/power4/memcopy.h b/sysdeps/powerpc/powerpc32/power4/memcopy.h
> index d3752dc..3431084 100644
> --- a/sysdeps/powerpc/powerpc32/power4/memcopy.h
> +++ b/sysdeps/powerpc/powerpc32/power4/memcopy.h
> @@ -110,3 +110,7 @@
> ((byte *) dst_ep)[0] = __x; \
> } \
> } while (0)
> +
> +/* The powerpc memcpy implementation is safe to use for memmove. */
> +#undef MEMCPY_OK_FOR_FWD_MEMMOVE
> +#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
> diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
> index 2861071..b14c3b1 100644
> --- a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
> +++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c
> @@ -27,5 +27,4 @@ extern __typeof (memmove) __memmove_power7;
> #undef libc_hidden_builtin_def
> #define libc_hidden_builtin_def(name)
>
> -#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
> #include <string/memmove.c>
> diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c
> index e323a4d..d56b77a 100644
> --- a/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c
> +++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c
> @@ -30,5 +30,4 @@ extern __typeof (memmove) __memmove_ppc;
> __hidden_ver1 (__memmove_ppc, __GI_memmove, __memmove_ppc);
> #endif
>
> -#define MEMCPY_OK_FOR_FWD_MEMMOVE 1
> #include <string/memmove.c>
> diff --git a/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c
> index b39348f..ff78fe6 100644
> --- a/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c
> +++ b/sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c
> @@ -25,4 +25,4 @@
>
> extern __typeof (memmove) __memmove_ppc attribute_hidden;
>
> -#include <sysdeps/powerpc/memmove.c>
> +#include <string/memmove.c>
>