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

Richard Purdie richard.purdie at linuxfoundation.org
Wed Aug 10 12:16:32 UTC 2011


On Wed, 2011-08-10 at 10:28 +0800, Lu, Lianhao wrote:
> 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.

Good catch, it should be *before* the require too (like many of the
other similar files). I'll fix this.

Cheers,

Richard





More information about the Openembedded-core mailing list