[OE-core] [PATCH 3/3] x86 tune inc files: add x32 abi tune parameters

Lu, Lianhao lianhao.lu at intel.com
Wed Aug 10 02:28:57 UTC 2011


nitin.a.kamble at intel.com wrote on 2011-08-06:
> From: Nitin A Kamble <nitin.a.kamble at intel.com>
> 
> Signed-off-by: Nitin A Kamble <nitin.a.kamble at intel.com>
> ---
>  meta/conf/machine/include/ia32/arch-ia32.inc |   19 +++++++++++++++++--
>  meta/conf/machine/include/tune-core2.inc     |    4 ++++
>  meta/conf/machine/include/tune-x86_64.inc    |    2 +-
>  3 files changed, 22 insertions(+), 3 deletions(-)
> diff --git a/meta/conf/machine/include/ia32/arch-ia32.inc
> b/meta/conf/machine/include/ia32/arch-ia32.inc index 2709440..96980d2
> 100644 --- a/meta/conf/machine/include/ia32/arch-ia32.inc +++
> b/meta/conf/machine/include/ia32/arch-ia32.inc @@ -9,13 +9,22 @@
> X86ARCH64 ?= "x86_64"
> 
>  # ELF32 ABI
>  TUNEVALID[m32] = "IA32 ELF32 standard ABI"
> -TUNECONFLICTS[m32] = "m64"
> +TUNECONFLICTS[m32] = "m64 mx32"
>  TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m32",
>  "${X86ARCH32}", "" ,d)}" TUNE_CCARGS +=
>  "${@bb.utils.contains("TUNE_FEATURES", "m32", "-m32",
> "", d)}"
> 
> +# x32 ABI
> +TUNEVALID[mx32] = "IA32e (x86_64) ELF32 standard ABI"
> +TUNECONFLICTS[mx32] = "m64 m32"
> +TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "mx32",
> "${X86ARCH64}", "" ,d)}"
> +ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32",
> "" ,d)}"
> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32",
> "-mx32", "", d)}"
> +TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m
> elf32_x86_64", "", d)}"
> +TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32",
> "", d)}"
> +
>  # ELF64 ABI
>  TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"
> -TUNECONFLICT[m64] = "m32"
> +TUNECONFLICT[m64] = "m32 mx32"
>  TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m64",
>  "${X86ARCH64}", "" ,d)}" TUNE_CCARGS +=
>  "${@bb.utils.contains("TUNE_FEATURES", "m64", "-m64",
> "", d)}"
> 
> @@ -31,3 +40,9 @@ AVAILTUNES += "x86-64"
>  TUNE_FEATURES_tune-x86-64 ?= "m64"
>  BASE_LIB_tune-x86-64 ?= "lib64"
>  PACKAGE_EXTRA_ARCHS_tune-x86-64 = "x86_64"
> + +AVAILTUNES += "x86-64-x32" +TUNE_FEATURES_tune-x86-64-x32 ?= "mx32"
> +BASE_LIB_tune-x86-64-x32 ?= "lib" +PACKAGE_EXTRA_ARCHS_tune-x86-64-x32
> = "x86_64-x32" +TUNE_PKGARCH .= "${@bb.utils.contains("TUNE_FEATURES",
> "mx32", +"-x32", "", d)}" diff --git
> a/meta/conf/machine/include/tune-core2.inc
> b/meta/conf/machine/include/tune-core2.inc index 25c2226..78f8f4d 100644
> --- a/meta/conf/machine/include/tune-core2.inc +++
> b/meta/conf/machine/include/tune-core2.inc @@ -18,3 +18,7 @@
> TUNE_FEATURES_tune-core2-64 ?= "${TUNE_FEATURES_tune-x86-64} core2"
>  BASE_LIB_tune-core2-64 ?= "lib64"
>  PACKAGE_EXTRA_ARCHS_tune-core2-64 =
> "${PACKAGE_EXTRA_ARCHS_tune-x86-64} core2-64"
> 
> +AVAILTUNES += "core2-64-x32" +TUNE_FEATURES_tune-core2-64-x32 ?=
> "${TUNE_FEATURES_tune-x86-64-x32} core2" +BASE_LIB_tune-core2-64-x32 ?=
> "lib" +PACKAGE_EXTRA_ARCHS_tune-core2-64-x32 =
> "${PACKAGE_EXTRA_ARCHS_tune-x86-64-x32} core2-64-x32" diff --git
> a/meta/conf/machine/include/tune-x86_64.inc
> b/meta/conf/machine/include/tune-x86_64.inc index 04b0f96..50f20ba
> 100644 --- a/meta/conf/machine/include/tune-x86_64.inc +++
> b/meta/conf/machine/include/tune-x86_64.inc @@ -1,3 +1,3 @@
>  require conf/machine/include/ia32/arch-ia32.inc
> -DEFAULTTUNE = "x86-64"
> +DEFAULTTUNE ?= "x86-64"

Well, it seems this "?=" has no effect here because DEFAULTTUNE is already "?="ed in arch-ia32.inc. Now machine qemux86-64 has the incorrect TUNE_ARCH of i586.

Best Regards,
-Lianhao 







More information about the Openembedded-core mailing list