This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH 0/6] powerpc: multiarch cleanups
- From: Adhemerval Zanella <azanella at linux dot vnet dot ibm dot com>
- To: "GNU C. Library" <libc-alpha at sourceware dot org>
- Date: Wed, 21 Jan 2015 14:14:28 -0200
- Subject: [PATCH 0/6] powerpc: multiarch cleanups
- Authentication-results: sourceware.org; auth=none
Hi,
This is something I had in my backlog and it is mainly code organization
and cleanup. The idea is the initial IFUNC support for powerpc64 and
powerpc32 added internal IFUNC workcopy functions (_wordcopy_*) meant
to be used by memmove implementation. However, POWER7 currently
provides optimized memmove (at least for powerpc64) and these symbols
are meant to be use only for memmove/bcopy. A better approach would
be just build them and calling locally by specific memmove/bcopy
implementation.
So this patch set removes the wordcopy IFUNC implementation and simplify
both memmove and bcopy for powerpc64 and powerpc32. For powerpc64 I do
not think it is worth to provide a power4/power6 memmmove based on
default algorithm, although it could a possible future enhancement.
The patchset is meant to be pushed when 2.22 opens. Tested on powerpc64,
powerpc64le, and powerpc32.
--
sysdeps/powerpc/powerpc32/power4/multiarch/Makefile | 14 ++++++++++----
sysdeps/powerpc/powerpc32/power4/multiarch/memmove-power7.c | 11 +++++++++++
sysdeps/powerpc/powerpc32/power4/multiarch/memmove-ppc.c | 11 +++++++++++
sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power6.c | 23 -----------------------
sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c | 14 +++++++++-----
sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy.c | 86 --------------------------------------------------------------------------------------
sysdeps/powerpc/powerpc64/multiarch/Makefile | 19 +++++++++++--------
sysdeps/powerpc/powerpc64/multiarch/bcopy-ppc64.c | 10 ++++++----
sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c | 18 ++++++++++++++++--
sysdeps/powerpc/powerpc64/multiarch/wordcopy-power6.c | 19 -------------------
sysdeps/powerpc/powerpc64/multiarch/wordcopy-power7.c | 19 -------------------
sysdeps/powerpc/powerpc64/multiarch/wordcopy.c | 86 --------------------------------------------------------------------------------------