[OE-core] [RFC][WIP[[PATCH] feature-arm-vfp.inc: respect vfpv4 when setting -mfloat-abi andARMPKGSFX_EABI

Martin Jansa martin.jansa at gmail.com
Mon Oct 19 20:13:08 UTC 2015


On Mon, Oct 19, 2015 at 12:40:05PM -0700, Khem Raj wrote:
> Why doesnt vfpv4 also imply vfp ? Isnt it a super set

As it's now adding it to TUNE_FEATURES it would duplicate -mfpu options
with different values, this change should probably cover vfpv3 and
vfpv3d16 as well as added in:

commit f9de9521477a1de8f6a399bcdc8260e28e34dfb3
Author: André Draszik <git at andred.net>
Date:   Fri Jul 24 14:14:30 2015 +0100

    arch-armv7a.inc, feature-arm-vfp.inc: add tunes for vfpv3 and
vfpv3d16

vfpv4 as separate TUNE_FEATURE was added in:

commit e97d152ca13556b41a236c1a4cfb11e77ff857d7
Author: Kristof Robot <krirobo at gmail.com>
Date:   Sun Jan 26 10:03:56 2014 +0100

    Add Cortex A7 support for NEONv2 & FPv4

So you should probably ask Kristof or Andre why they didn't include vfp
as well. I'm just trying to fix missing -mfloat-abi=hard when switching from
vfp to vfpv4.

Regards,

> On Oct 19, 2015 11:03 AM, "Martin Jansa" <martin.jansa at gmail.com> wrote:
> 
> > * without this change it wasn't possible to use call-convention hard
> >   together with vfpv4
> > * also use ' inside quoted values
> >
> > Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
> > ---
> >  meta/conf/machine/include/arm/feature-arm-vfp.inc | 9 +++++----
> >  1 file changed, 5 insertions(+), 4 deletions(-)
> >
> > diff --git a/meta/conf/machine/include/arm/feature-arm-vfp.inc
> > b/meta/conf/machine/include/arm/feature-arm-vfp.inc
> > index 13927ff..440950a 100644
> > --- a/meta/conf/machine/include/arm/feature-arm-vfp.inc
> > +++ b/meta/conf/machine/include/arm/feature-arm-vfp.inc
> > @@ -1,9 +1,10 @@
> >  TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
> > -ARMPKGSFX_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "vfp", "-vfp", ""
> > ,d)}"
> > +ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfp', '-vfp', ''
> > ,d)}"
> >
> >  TUNEVALID[vfpv4] = "Enable Vector Floating Point Version 4 (vfpv4) unit."
> > -ARMPKGSFX_FPU .= "${@bb.utils.contains("TUNE_FEATURES", "vfpv4",
> > "-vfpv4", "" ,d)}"
> > +ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv4',
> > '-vfpv4', '' ,d)}"
> >
> >  TUNEVALID[callconvention-hard] = "Enable EABI hard float call convention,
> > requires VFP."
> > -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "vfp",
> > bb.utils.contains("TUNE_FEATURES", "callconvention-hard", "
> > -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
> > -ARMPKGSFX_EABI .= "${@bb.utils.contains("TUNE_FEATURES", [
> > "callconvention-hard", "vfp" ], "hf", "", d)}"
> > +TUNE_CCARGS .= "${@bb.utils.contains_any('TUNE_FEATURES', [ 'vfp',
> > 'vfpv4' ], bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '
> > -mfloat-abi=hard', ' -mfloat-abi=softfp', d), '' ,d)}"
> > +ARMPKGSFX_EABI .= "${@bb.utils.contains('TUNE_FEATURES', [
> > 'callconvention-hard', 'vfp' ], 'hf', '', d)}"
> > +ARMPKGSFX_EABI .= "${@bb.utils.contains('TUNE_FEATURES', [
> > 'callconvention-hard', 'vfpv4' ], 'hf', '', d)}"
> > --
> > 2.6.1
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core at lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20151019/7ea13159/attachment-0002.sig>


More information about the Openembedded-core mailing list