[OE-core] [PATCH] eglibc_2.16.bb: refresh ppc_slow_ieee754_sqrt.patch for e6500

McClintock Matthew-B29882 B29882 at freescale.com
Wed Sep 19 03:51:16 UTC 2012


On Tue, Sep 18, 2012 at 5:08 PM, Matthew McClintock <msm at freescale.com> wrote:
> Make same changes for e6500 fpu as done with others

This patch was the problem, I needed to update this for e500mc as well
since the glibc.fix_sqrt2.patch updates it as well. Will submit v2 of
both of the patches.

-M

>
> Signed-off-by: Matthew McClintock <msm at freescale.com>
> ---
>  .../eglibc/eglibc-2.16/ppc_slow_ieee754_sqrt.patch |  101 ++++++++++++++++----
>  meta/recipes-core/eglibc/eglibc_2.16.bb            |    2 +-
>  2 files changed, 84 insertions(+), 19 deletions(-)
>
> diff --git a/meta/recipes-core/eglibc/eglibc-2.16/ppc_slow_ieee754_sqrt.patch b/meta/recipes-core/eglibc/eglibc-2.16/ppc_slow_ieee754_sqrt.patch
> index 9a932ff..f432b72 100644
> --- a/meta/recipes-core/eglibc/eglibc-2.16/ppc_slow_ieee754_sqrt.patch
> +++ b/meta/recipes-core/eglibc/eglibc-2.16/ppc_slow_ieee754_sqrt.patch
> @@ -5,9 +5,9 @@ Signed-off-by: Khem Raj <raj.khem at gmail.com>
>  Upstream-Status: Pending
>  Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c
>  ===================================================================
> ---- libc.orig/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c      2012-07-03 22:36:01.172386436 -0700
> -+++ libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c   2012-07-03 23:04:37.396469515 -0700
> -@@ -40,7 +40,7 @@
> +--- libc.orig/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c
> ++++ libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c
> +@@ -40,7 +40,7 @@ static const float half = 0.5;
>      simultaneously.  */
>
>   double
> @@ -16,7 +16,7 @@ Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c
>   {
>     if (__builtin_expect (b > 0, 1))
>       {
> -@@ -77,7 +77,7 @@
> +@@ -77,7 +77,7 @@ __ieee754_sqrt (double b)
>
>             /* Handle small numbers by scaling.  */
>             if (__builtin_expect ((u.parts.msw & 0x7ff00000) <= 0x02000000, 0))
> @@ -25,7 +25,7 @@ Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c
>
>   #define FMADD(a_, c_, b_)                                               \
>             ({ double __r;                                                \
> -@@ -126,4 +126,12 @@
> +@@ -126,4 +126,12 @@ __ieee754_sqrt (double b)
>       }
>     return f_wash (b);
>   }
> @@ -40,9 +40,9 @@ Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c
>   strong_alias (__ieee754_sqrt, __sqrt_finite)
>  Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c
>  ===================================================================
> ---- libc.orig/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c     2012-07-03 22:36:01.172386436 -0700
> -+++ libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c  2012-07-03 23:07:06.260476775 -0700
> -@@ -38,7 +38,7 @@
> +--- libc.orig/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c
> ++++ libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c
> +@@ -38,7 +38,7 @@ static const float threehalf = 1.5;
>      square root.  */
>
>   float
> @@ -51,7 +51,7 @@ Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c
>   {
>     if (__builtin_expect (b > 0, 1))
>       {
> -@@ -93,4 +93,10 @@
> +@@ -93,4 +93,10 @@ __ieee754_sqrtf (float b)
>       }
>     return f_washf (b);
>   }
> @@ -64,9 +64,9 @@ Index: libc/sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c
>   strong_alias (__ieee754_sqrtf, __sqrtf_finite)
>  Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c
>  ===================================================================
> ---- libc.orig/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c     2012-07-03 22:36:01.176386435 -0700
> -+++ libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c  2012-07-03 23:14:16.328497458 -0700
> -@@ -40,7 +40,7 @@
> +--- libc.orig/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c
> ++++ libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c
> +@@ -40,7 +40,7 @@ static const float half = 0.5;
>      simultaneously.  */
>
>   double
> @@ -75,7 +75,7 @@ Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c
>   {
>     if (__builtin_expect (b > 0, 1))
>       {
> -@@ -77,7 +77,7 @@
> +@@ -77,7 +77,7 @@ __ieee754_sqrt (double b)
>
>             /* Handle small numbers by scaling.  */
>             if (__builtin_expect ((u.parts.msw & 0x7ff00000) <= 0x02000000, 0))
> @@ -84,7 +84,7 @@ Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c
>
>   #define FMADD(a_, c_, b_)                                               \
>             ({ double __r;                                                \
> -@@ -126,4 +126,12 @@
> +@@ -126,4 +126,12 @@ __ieee754_sqrt (double b)
>       }
>     return f_wash (b);
>   }
> @@ -99,9 +99,9 @@ Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c
>   strong_alias (__ieee754_sqrt, __sqrt_finite)
>  Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c
>  ===================================================================
> ---- libc.orig/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c    2012-07-03 22:36:01.176386435 -0700
> -+++ libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c 2012-07-03 23:13:52.732496373 -0700
> -@@ -38,7 +38,7 @@
> +--- libc.orig/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c
> ++++ libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c
> +@@ -38,7 +38,7 @@ static const float threehalf = 1.5;
>      square root.  */
>
>   float
> @@ -110,7 +110,7 @@ Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c
>   {
>     if (__builtin_expect (b > 0, 1))
>       {
> -@@ -93,4 +93,10 @@
> +@@ -93,4 +93,10 @@ __ieee754_sqrtf (float b)
>       }
>     return f_washf (b);
>   }
> @@ -121,3 +121,68 @@ Index: libc/sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c
>  +  return __slow_ieee754_sqrtf (x);
>  +}
>   strong_alias (__ieee754_sqrtf, __sqrtf_finite)
> +Index: libc/sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrt.c
> +===================================================================
> +--- libc.orig/sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrt.c
> ++++ libc/sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrt.c
> +@@ -41,10 +41,10 @@ static const float half = 0.5;
> +
> + #ifdef __STDC__
> + double
> +-__ieee754_sqrt (double b)
> ++__slow_ieee754_sqrt (double b)
> + #else
> + double
> +-__ieee754_sqrt (b)
> ++__slow_ieee754_sqrt (b)
> +      double b;
> + #endif
> + {
> +@@ -83,7 +83,7 @@ __ieee754_sqrt (b)
> +
> +           /* Handle small numbers by scaling.  */
> +           if (__builtin_expect ((u.parts.msw & 0x7ff00000) <= 0x02000000, 0))
> +-            return __ieee754_sqrt (b * two108) * twom54;
> ++            return __slow_ieee754_sqrt (b * two108) * twom54;
> +
> + #define FMADD(a_, c_, b_)                                               \
> +           ({ double __r;                                                \
> +@@ -132,3 +132,10 @@ __ieee754_sqrt (b)
> +     }
> +   return f_wash (b);
> + }
> ++
> ++#undef __ieee754_sqrt
> ++double
> ++__ieee754_sqrt (double x)
> ++{
> ++   return __slow_ieee754_sqrt (x);
> ++}
> +Index: libc/sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrtf.c
> +===================================================================
> +--- libc.orig/sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrtf.c
> ++++ libc/sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrtf.c
> +@@ -39,10 +39,10 @@ static const float threehalf = 1.5;
> +
> + #ifdef __STDC__
> + float
> +-__ieee754_sqrtf (float b)
> ++__slow_ieee754_sqrtf (float b)
> + #else
> + float
> +-__ieee754_sqrtf (b)
> ++__slow_ieee754_sqrtf (b)
> +      float b;
> + #endif
> + {
> +@@ -99,3 +99,10 @@ __ieee754_sqrtf (b)
> +     }
> +   return f_washf (b);
> + }
> ++
> ++#undef __ieee754_sqrtf
> ++float
> ++__ieee754_sqrtf (float x)
> ++{
> ++  return __slow_ieee754_sqrtf (x);
> ++}
> diff --git a/meta/recipes-core/eglibc/eglibc_2.16.bb b/meta/recipes-core/eglibc/eglibc_2.16.bb
> index a753882..96da9a5 100644
> --- a/meta/recipes-core/eglibc/eglibc_2.16.bb
> +++ b/meta/recipes-core/eglibc/eglibc_2.16.bb
> @@ -3,7 +3,7 @@ require eglibc.inc
>  SRCREV = "20393"
>
>  DEPENDS += "gperf-native kconfig-frontends-native"
> -PR = "r10"
> +PR = "r11"
>  PR_append = "+svnr${SRCPV}"
>
>  EGLIBC_BRANCH="eglibc-2_16"
> --
> 1.7.9.7
>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core




More information about the Openembedded-core mailing list