[OE-core] [PATCH v2] tune-ppc: Update to pass glibc configure option to get cpu specific support

Mark Hatle mark.hatle at windriver.com
Wed Aug 10 19:19:17 UTC 2011


I don't think the patch is correct.  If these tune files are included, the
GLIBC_EXTRA_OECONF is set unconditionally.  It is possible to include the tune
files, but not actually use the tunings.  (There are cases where you might want
to inherit specific tunings, etc.)

Instead, I'd suggest you do:

GLIBC_EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppc603e",
"--with-cpu=603e", "", d)}"

(and a similar line for the e500mc)

--Mark

On 8/10/11 12:13 PM, Kumar Gala wrote:
> We need --with-cpu based to glibc to get proper support on 603e & e500mc
> to pickup proper math libs to deal with sqrt.  These core do not
> implement the fsqrt[s] instructions that the normal PPC math libs
> utilize.
> 
> This causes use to not set AVAILTUNES specifically to the sub-arch only
> as we arent generically compatiable.
> 
> Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
> ---
>  meta/conf/machine/include/tune-ppc603e.inc   |    5 ++++-
>  meta/conf/machine/include/tune-ppce500mc.inc |    5 ++++-
>  2 files changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/conf/machine/include/tune-ppc603e.inc b/meta/conf/machine/include/tune-ppc603e.inc
> index 9abb694..c673470 100644
> --- a/meta/conf/machine/include/tune-ppc603e.inc
> +++ b/meta/conf/machine/include/tune-ppc603e.inc
> @@ -6,6 +6,9 @@ TUNEVALID[ppc603e] = "Enable ppc603e specific processor optimizations"
>  TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppc603e", "-mcpu=603e", "", d)}"
>  TUNE_PKGARCH = "${@bb.utils.contains('TUNE_FEATURES', 'ppc603e', 'ppc603e', '${PPCPKGARCH}', d)}"
>  
> -AVAILTUNES += "ppc603e"
> +AVAILTUNES = "ppc603e"
>  TUNE_FEATURES_tune-ppc603e = "m32 ppc603e"
>  PACKAGE_EXTRA_ARCHS_tune-ppc603e = "powerpc ppc603e"
> +
> +# glibc configure options to get 603e specific library (for sqrt)
> +GLIBC_EXTRA_OECONF += "--with-cpu=603e"
> diff --git a/meta/conf/machine/include/tune-ppce500mc.inc b/meta/conf/machine/include/tune-ppce500mc.inc
> index b5031f4..cdd87dc 100644
> --- a/meta/conf/machine/include/tune-ppce500mc.inc
> +++ b/meta/conf/machine/include/tune-ppce500mc.inc
> @@ -6,6 +6,9 @@ TUNEVALID[ppce500mc] = "Enable ppce500mc specific processor optimizations"
>  TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce500mc", "-mcpu=e500mc", "", d)}"
>  TUNE_PKGARCH = "${@bb.utils.contains("TUNE_FEATURES", "ppce500mc", "ppce500mc", "${PPCPKGARCH}", d)}"
>  
> -AVAILTUNES += "ppce500mc"
> +AVAILTUNES = "ppce500mc"
>  TUNE_FEATURES_tune-ppce500mc = "m32 ppce500mc"
>  PACKAGE_EXTRA_ARCHS_tune-ppce500mc = "powerpc ppce500mc"
> +
> +# glibc configure options to get e500mc specific library (for sqrt)
> +GLIBC_EXTRA_OECONF += "--with-cpu=e500mc"





More information about the Openembedded-core mailing list