This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 00/25] Refactor IFUNC selection in C


I have tested this patchset natively on SPARC using GCC 4.9, 5, 6, 7, and
8 without any regression.  Since it does not change any semantic regarding
ifunc selection I am planning to push the mempcy and memset refactor 
next week so Patrick McGehearty can rebase its work on optimized M7
implementation.

On 26/10/2017 17:06, Adhemerval Zanella wrote:
> This patchset is the continuation of two previous patchset
> [1][2][3][4] to convert ifunc implementation in assembly to C
> using GLIBC macros (which may use direct asm or GCC attributes
> depending of compiler support).
>  
> No functional change is expected in generated symbols or
> ifunc selection, although some code reorganization was
> done in the case of ifunc selection also build the default
> variant at the same module.  In this case a new file is
> created with 'generic' suffix.
> 
> I also created a personal branch for this patchset on
> azanella/ifunc-c [5]
>  
> [1] https://sourceware.org/ml/libc-alpha/2017-10/msg00578.html
> [2] https://sourceware.org/ml/libc-alpha/2017-10/msg00576.html
> [3] https://sourceware.org/ml/libc-alpha/2017-10/msg00281.html
> [4] https://sourceware.org/ml/libc-alpha/2017-10/msg00282.html
> [5] https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/azanella/ifunc-c
> 
> Adhemerval Zanella (25):
>   arm: Implement memcpy ifunc selection in C
>   arm: Implement memchr ifunc selection in C
>   sparc: Implement memcpy/mempcpy ifunc selection in C
>   sparc: Implement memset/bzero ifunc selection in C
>   sparc: Assume VIS3 support
>   sparc: refactor sparc64 signbit{f} selector to C
>   sparc: refactor sparc64 isnan{f} selector to C
>   sparc: refactor sparc64 isinf{f} selector to C
>   sparc: refactor sparc64 finite{f} selector to C
>   sparc: refactor sparc64 nearbyint{f} selector to C
>   sparc: refactor sparc64 lrint{f} selector to C
>   sparc: refactor sparc64 rint{f} selector to C
>   sparc: refactor sparc64 __mpn_mul_1 selector to C
>   sparc: refactor sparc64 __mpn_sub_n selector to C
>   sparc: refactor sparc64 __mpn_addmul_1 selector to C
>   sparc: refactor sparc64 __mpn_submul_1 selector to C
>   sparc: refactor sparc64 __mpn_add_n selector to C
>   sparc: refactor sparc32 copysign selector to C
>   sparc: refactor sparc32 fabs{f} selector to C
>   sparc: refactor sparc32 llrint{f} selector to C
>   sparc: refactor sparc32 rint{f} selector to C
>   sparc: refactor sparc32 nearbyint{f} selector to C
>   sparc: refactor cpu_relax to C
>   sparc: Remove ununsed ifunc assembly macros
>   x32: Remove unused getcpu implementation
> 
>  ChangeLog                                          | 279 +++++++++++++++++++++
>  config.h.in                                        |   3 -
>  sysdeps/arm/arm-ifunc.h                            |  33 +++
>  sysdeps/arm/armv7/multiarch/Makefile               |   3 +-
>  sysdeps/arm/armv7/multiarch/ifunc-memchr.h         |  28 +++
>  sysdeps/arm/armv7/multiarch/ifunc-memcpy.h         |  37 +++
>  sysdeps/arm/armv7/multiarch/memchr.c               |  35 +++
>  sysdeps/arm/armv7/multiarch/memchr_impl.S          | 219 ----------------
>  sysdeps/arm/armv7/multiarch/memchr_neon.S          | 221 +++++++++++++++-
>  sysdeps/arm/armv7/multiarch/memchr_noneon.S        |   5 +
>  sysdeps/arm/armv7/multiarch/memcpy.S               |  76 ------
>  sysdeps/arm/armv7/multiarch/memcpy.c               |  35 +++
>  sysdeps/arm/armv7/multiarch/memcpy_arm.S           |  10 +
>  sysdeps/arm/armv7/multiarch/memcpy_neon.S          |   8 +-
>  sysdeps/arm/armv7/multiarch/memcpy_vfp.S           |   4 +-
>  sysdeps/arm/armv7/multiarch/rtld-memchr.S          |   1 +
>  sysdeps/arm/armv7/multiarch/rtld-memcpy.S          |   1 +
>  sysdeps/sparc/configure                            |  42 ----
>  sysdeps/sparc/configure.ac                         |  29 ---
>  sysdeps/sparc/sparc-ifunc.h                        | 163 ++----------
>  sysdeps/sparc/sparc32/sparcv9/Makefile             |   7 -
>  sysdeps/sparc/sparc32/sparcv9/cpu_relax.S          |   1 -
>  sysdeps/sparc/sparc32/sparcv9/cpu_relax.c          |   1 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/Makefile   |  26 +-
>  .../sparcv9/fpu/multiarch/s_copysign-generic.S     |   8 +
>  .../sparc32/sparcv9/fpu/multiarch/s_copysign.S     |  21 --
>  .../sparc32/sparcv9/fpu/multiarch/s_copysign.c     |  38 +++
>  .../sparcv9/fpu/multiarch/s_copysignf-generic.S    |   4 +
>  .../sparc32/sparcv9/fpu/multiarch/s_copysignf.S    |  12 -
>  .../sparc32/sparcv9/fpu/multiarch/s_copysignf.c    |  11 +
>  .../sparc32/sparcv9/fpu/multiarch/s_fabs-generic.S |   8 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S   |  18 --
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.c   |  35 +++
>  .../sparcv9/fpu/multiarch/s_fabsf-generic.S        |   4 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S  |  12 -
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.c  |  29 +++
>  .../sparc32/sparcv9/fpu/multiarch/s_fdim-generic.c |   4 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.c   |  17 +-
>  .../sparcv9/fpu/multiarch/s_fdimf-generic.c        |   3 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.c  |  12 +-
>  .../sparc32/sparcv9/fpu/multiarch/s_fma-generic.c  |   2 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fma.c    |  12 +-
>  .../sparc32/sparcv9/fpu/multiarch/s_fmaf-generic.c |   2 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf.c   |  10 +-
>  .../sparcv9/fpu/multiarch/s_llrint-generic.S       |   8 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S |  24 --
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.c |  36 +++
>  .../sparcv9/fpu/multiarch/s_llrintf-generic.S      |   4 +
>  .../sparc32/sparcv9/fpu/multiarch/s_llrintf.S      |  17 --
>  .../sparc32/sparcv9/fpu/multiarch/s_llrintf.c      |  29 +++
>  .../sparcv9/fpu/multiarch/s_nearbyint-generic.S    |   9 +
>  .../sparc32/sparcv9/fpu/multiarch/s_nearbyint.S    |  19 --
>  .../sparc32/sparcv9/fpu/multiarch/s_nearbyint.c    |  35 +++
>  .../sparcv9/fpu/multiarch/s_nearbyintf-generic.S   |   4 +
>  .../sparc32/sparcv9/fpu/multiarch/s_nearbyintf.S   |  12 -
>  .../sparc32/sparcv9/fpu/multiarch/s_nearbyintf.c   |  29 +++
>  .../sparc32/sparcv9/fpu/multiarch/s_rint-generic.S |   8 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S   |  19 --
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_rint.c   |  35 +++
>  .../sparcv9/fpu/multiarch/s_rintf-generic.S        |   4 +
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S  |  12 -
>  .../sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.c  |  29 +++
>  sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile   |   3 +-
>  .../sparc32/sparcv9/multiarch/memcpy-ultra1.S      |  32 +++
>  sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.S   |   4 -
>  sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.c   |   1 +
>  sysdeps/sparc/sparc32/sparcv9/multiarch/mempcpy.c  |   1 +
>  .../sparc32/sparcv9/multiarch/memset-ultra1.S      |  30 +++
>  sysdeps/sparc/sparc32/sparcv9/multiarch/memset.S   |   4 -
>  sysdeps/sparc/sparc32/sparcv9/multiarch/memset.c   |   1 +
>  .../sparc/sparc32/sparcv9/multiarch/rtld-mempcpy.S |   1 +
>  sysdeps/sparc/sparc64/Makefile                     |   2 -
>  sysdeps/sparc/sparc64/cpu_relax.S                  |  67 -----
>  sysdeps/sparc/sparc64/cpu_relax.c                  |  38 +++
>  sysdeps/sparc/sparc64/fpu/multiarch/Makefile       |  32 ++-
>  .../sparc/sparc64/fpu/multiarch/s_ceil-generic.c   |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.c       |  19 +-
>  .../sparc/sparc64/fpu/multiarch/s_ceilf-generic.c  |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c      |  19 +-
>  .../sparc/sparc64/fpu/multiarch/s_finite-generic.S |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_finite.S     |  15 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_finite.c     |  37 +++
>  .../sparc64/fpu/multiarch/s_finitef-generic.S      |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.S    |  15 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.c    |  33 +++
>  .../sparc/sparc64/fpu/multiarch/s_floor-generic.c  |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_floor.c      |  19 +-
>  .../sparc/sparc64/fpu/multiarch/s_floorf-generic.c |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c     |  19 +-
>  .../sparc/sparc64/fpu/multiarch/s_fma-generic.c    |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_fma.c        |  19 +-
>  .../sparc/sparc64/fpu/multiarch/s_fmaf-generic.c   |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c       |  19 +-
>  .../sparc/sparc64/fpu/multiarch/s_isinf-generic.S  |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.S      |  15 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.c      |  37 +++
>  .../sparc/sparc64/fpu/multiarch/s_isinff-generic.S |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.S     |  15 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.c     |  33 +++
>  .../sparc/sparc64/fpu/multiarch/s_isnan-generic.S  |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.S      |  15 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.c      |  37 +++
>  .../sparc/sparc64/fpu/multiarch/s_isnanf-generic.S |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.S     |  15 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.c     |  33 +++
>  .../sparc/sparc64/fpu/multiarch/s_lrint-generic.S  |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.S      |  17 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.c      |  39 +++
>  .../sparc/sparc64/fpu/multiarch/s_lrintf-generic.S |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.S     |  17 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c     |  39 +++
>  .../sparc64/fpu/multiarch/s_nearbyint-generic.S    |   4 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.S  |  12 -
>  sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.c  |  29 +++
>  .../sparc64/fpu/multiarch/s_nearbyintf-generic.S   |   4 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.S |  12 -
>  sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c |  29 +++
>  .../sparc/sparc64/fpu/multiarch/s_rint-generic.S   |   4 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_rint.S       |  12 -
>  sysdeps/sparc/sparc64/fpu/multiarch/s_rint.c       |  29 +++
>  .../sparc/sparc64/fpu/multiarch/s_rintf-generic.S  |   4 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.S      |  12 -
>  sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c      |  29 +++
>  .../sparc64/fpu/multiarch/s_signbit-generic.S      |   6 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S    |  20 --
>  sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.c    |  37 +++
>  .../sparc64/fpu/multiarch/s_signbitf-generic.S     |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S   |  10 -
>  sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.c   |  28 +++
>  .../sparc/sparc64/fpu/multiarch/s_trunc-generic.c  |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_trunc.c      |  19 +-
>  .../sparc/sparc64/fpu/multiarch/s_truncf-generic.c |   2 +
>  sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c     |  19 +-
>  sysdeps/sparc/sparc64/multiarch/Makefile           |   7 +-
>  sysdeps/sparc/sparc64/multiarch/add_n-generic.S    |   2 +
>  sysdeps/sparc/sparc64/multiarch/add_n.S            |  56 -----
>  sysdeps/sparc/sparc64/multiarch/add_n.c            |  28 +++
>  sysdeps/sparc/sparc64/multiarch/addmul_1-generic.S |   2 +
>  sysdeps/sparc/sparc64/multiarch/addmul_1.S         |  56 -----
>  sysdeps/sparc/sparc64/multiarch/addmul_1.c         |  28 +++
>  sysdeps/sparc/sparc64/multiarch/ifunc-memcpy.h     |  40 +++
>  sysdeps/sparc/sparc64/multiarch/ifunc-memset.h     |  34 +++
>  .../sparc64/multiarch/memcpy-ultra1.S}             |  38 +--
>  sysdeps/sparc/sparc64/multiarch/memcpy.S           | 167 ------------
>  sysdeps/sparc/sparc64/multiarch/memcpy.c           |  33 +++
>  sysdeps/sparc/sparc64/multiarch/mempcpy.c          |  39 +++
>  .../sparc64/multiarch/memset-ultra1.S}             |  23 +-
>  sysdeps/sparc/sparc64/multiarch/memset.S           | 124 ---------
>  sysdeps/sparc/sparc64/multiarch/memset.c           |  42 ++++
>  sysdeps/sparc/sparc64/multiarch/mul_1-generic.S    |   2 +
>  sysdeps/sparc/sparc64/multiarch/mul_1.S            |  56 -----
>  sysdeps/sparc/sparc64/multiarch/mul_1.c            |  28 +++
>  sysdeps/sparc/sparc64/multiarch/rtld-mempcpy.S     |   1 +
>  sysdeps/sparc/sparc64/multiarch/sub_n-generic.S    |   2 +
>  sysdeps/sparc/sparc64/multiarch/sub_n.S            |  56 -----
>  sysdeps/sparc/sparc64/multiarch/sub_n.c            |  28 +++
>  sysdeps/sparc/sparc64/multiarch/submul_1-generic.S |   2 +
>  sysdeps/sparc/sparc64/multiarch/submul_1.S         |  56 -----
>  sysdeps/sparc/sparc64/multiarch/submul_1.c         |  28 +++
>  159 files changed, 2222 insertions(+), 1745 deletions(-)
>  create mode 100644 sysdeps/arm/arm-ifunc.h
>  create mode 100644 sysdeps/arm/armv7/multiarch/ifunc-memchr.h
>  create mode 100644 sysdeps/arm/armv7/multiarch/ifunc-memcpy.h
>  create mode 100644 sysdeps/arm/armv7/multiarch/memchr.c
>  delete mode 100644 sysdeps/arm/armv7/multiarch/memchr_impl.S
>  create mode 100644 sysdeps/arm/armv7/multiarch/memchr_noneon.S
>  delete mode 100644 sysdeps/arm/armv7/multiarch/memcpy.S
>  create mode 100644 sysdeps/arm/armv7/multiarch/memcpy.c
>  create mode 100644 sysdeps/arm/armv7/multiarch/memcpy_arm.S
>  create mode 100644 sysdeps/arm/armv7/multiarch/rtld-memchr.S
>  create mode 100644 sysdeps/arm/armv7/multiarch/rtld-memcpy.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/cpu_relax.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/cpu_relax.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysign.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabs.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim-generic.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf-generic.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fma-generic.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf-generic.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrint.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rint.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy-ultra1.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/memcpy.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/mempcpy.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/memset-ultra1.S
>  delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/memset.S
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/memset.c
>  create mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/rtld-mempcpy.S
>  delete mode 100644 sysdeps/sparc/sparc64/cpu_relax.S
>  create mode 100644 sysdeps/sparc/sparc64/cpu_relax.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_finite-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_finite.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_finite.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_finitef-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_finitef.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_floor-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_fma-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isinf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isinf.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isinff-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isinff.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isnan-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isnan.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_isnanf.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_lrint-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_lrint.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_rint-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_rint.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_rint.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_rintf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_signbit-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_signbit.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.S
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_signbitf.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_trunc-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/fpu/multiarch/s_truncf-generic.c
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/add_n-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/multiarch/add_n.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/add_n.c
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/addmul_1-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/multiarch/addmul_1.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/addmul_1.c
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/ifunc-memcpy.h
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/ifunc-memset.h
>  rename sysdeps/{arm/armv7/multiarch/memchr.S => sparc/sparc64/multiarch/memcpy-ultra1.S} (55%)
>  delete mode 100644 sysdeps/sparc/sparc64/multiarch/memcpy.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/memcpy.c
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/mempcpy.c
>  rename sysdeps/{unix/sysv/linux/x86_64/x32/getcpu.c => sparc/sparc64/multiarch/memset-ultra1.S} (67%)
>  delete mode 100644 sysdeps/sparc/sparc64/multiarch/memset.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/memset.c
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/mul_1-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/multiarch/mul_1.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/mul_1.c
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/rtld-mempcpy.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/sub_n-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/multiarch/sub_n.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/sub_n.c
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/submul_1-generic.S
>  delete mode 100644 sysdeps/sparc/sparc64/multiarch/submul_1.S
>  create mode 100644 sysdeps/sparc/sparc64/multiarch/submul_1.c
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]