All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH][master][RESEND 00/15] ARM tune fixes and improvements
@ 2015-12-10 13:48 Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 01/15] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS Martin Jansa
                   ` (15 more replies)
  0 siblings, 16 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

You can see the test script and results in various stages of this patch
series in jansa/tune2-test branch:
http://git.openembedded.org/openembedded-core-contrib/log/?h=jansa/tune2-test
I'll add more test results here a bit later (running full test for all tunes again)

The following changes since commit 192da885e92d3b163b9c4e6b8151c9ecc6062b14:

  build-appliance-image: Update to master head revision (2015-12-09 08:49:13 +0000)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib jansa/master-submitted
  http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=jansa/master-submitted

Martin Jansa (15):
  sanity.bbclass: add more information to error message about
    TUNE_PKGARCH missing in PACKAGE_ARCHS
  tune-cortexr4.inc: fix PACKAGE_EXTRA_ARCHS
  arch-armv7a: add missing space before ?=
  arch-armv7a, tune-cortexa*: improve comment VFP -> HF
  arch-armv7a, tune-cortexa*: improve indentation
  arm/arch-arm*, tune-cortexa*, tune-thunderx.inc,
    powerpac/arch-powerpc64.inc: Use normal assignment
  arch-armv[456]*.inc: improve indentation like armv7a
  arch-armv5.inc: drop duplicate ARMPKGSFX_DSP and
    PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp
  arch-armv7a.inc: Fix PACKAGE_EXTRA_ARCHS for tune-armv7atb-vfpv3,
    tune-armv7atb-vfpv3d16, cortexa7thf-neon-vfpv4
  arch-armv7a.inc: add vfpv4 support also to softfp and big endiand
    tunes
  feature-arm-{neon,vfp}.inc: refactor and fix issues
  feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT
  cortexa{7,15,17}: add VFPv4 tunes
  arch-armv7ve: add tune include for armv7ve and use it from cortexa7
    and cortexa15
  tune-*: use mcpu instead of mtune for ARM tunes

 meta/classes/sanity.bbclass                        |   3 +-
 meta/conf/machine/include/arm/arch-arm.inc         |   3 +-
 meta/conf/machine/include/arm/arch-arm64.inc       |   6 +-
 meta/conf/machine/include/arm/arch-armv4.inc       |  16 +-
 meta/conf/machine/include/arm/arch-armv5-dsp.inc   |  56 ++---
 meta/conf/machine/include/arm/arch-armv5.inc       |  61 +++---
 meta/conf/machine/include/arm/arch-armv6.inc       |  64 +++---
 meta/conf/machine/include/arm/arch-armv7a.inc      | 230 +++++++++++----------
 meta/conf/machine/include/arm/arch-armv7ve.inc     | 141 +++++++++++++
 meta/conf/machine/include/arm/feature-arm-neon.inc |  19 +-
 .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
 meta/conf/machine/include/arm/feature-arm-vfp.inc  |  23 +--
 .../machine/include/powerpc/arch-powerpc64.inc     |   2 +-
 meta/conf/machine/include/tune-arm1136jf-s.inc     |   2 +-
 meta/conf/machine/include/tune-arm920t.inc         |   2 +-
 meta/conf/machine/include/tune-arm926ejs.inc       |   2 +-
 meta/conf/machine/include/tune-arm9tdmi.inc        |   2 +-
 meta/conf/machine/include/tune-cortexa15.inc       |  72 ++++---
 meta/conf/machine/include/tune-cortexa17.inc       |  68 +++---
 meta/conf/machine/include/tune-cortexa5.inc        |  52 ++---
 meta/conf/machine/include/tune-cortexa7.inc        |  74 ++++---
 meta/conf/machine/include/tune-cortexa8.inc        |  52 ++---
 meta/conf/machine/include/tune-cortexa9.inc        |  52 ++---
 meta/conf/machine/include/tune-cortexm1.inc        |   2 +-
 meta/conf/machine/include/tune-cortexm3.inc        |   2 +-
 meta/conf/machine/include/tune-cortexr4.inc        |   4 +-
 meta/conf/machine/include/tune-ep9312.inc          |   2 +-
 meta/conf/machine/include/tune-iwmmxt.inc          |   2 +-
 meta/conf/machine/include/tune-strongarm1100.inc   |   2 +-
 meta/conf/machine/include/tune-thunderx.inc        |   4 +-
 meta/conf/machine/include/tune-xscale.inc          |   2 +-
 31 files changed, 611 insertions(+), 412 deletions(-)
 create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc

-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 01/15] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 21:11   ` Khem Raj
  2015-12-10 13:48 ` [PATCH][master][RESEND 02/15] tune-cortexr4.inc: fix PACKAGE_EXTRA_ARCHS Martin Jansa
                   ` (14 subsequent siblings)
  15 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* sometimes it's hard to see whots wrong here
* error message:
  Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (cortexa7t2hfhf-vfp-vfpv4-neon).
  doesn't help much to understand what exactly went wrong and where

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/classes/sanity.bbclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index ad9dda8..9f35558 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -329,6 +329,7 @@ def check_sanity_validmachine(sanity_data):
     # Check that we don't have duplicate entries in PACKAGE_ARCHS & that TUNE_PKGARCH is in PACKAGE_ARCHS
     pkgarchs = sanity_data.getVar('PACKAGE_ARCHS', True)
     tunepkg = sanity_data.getVar('TUNE_PKGARCH', True)
+    defaulttune = sanity_data.getVar('DEFAULTTUNE', True)
     tunefound = False
     seen = {}
     dups = []
@@ -345,7 +346,7 @@ def check_sanity_validmachine(sanity_data):
         messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)
 
     if tunefound == False:
-        messages = messages + "Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (%s)." % tunepkg
+        messages = messages + "Error, the PACKAGE_ARCHS variable (%s) for DEFAULTTUNE (%s) does not contain TUNE_PKGARCH (%s)." % (pkgarchs, defaulttune, tunepkg)
 
     return messages
 
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 02/15] tune-cortexr4.inc: fix PACKAGE_EXTRA_ARCHS
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 01/15] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 03/15] arch-armv7a: add missing space before ?= Martin Jansa
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* PACKAGE_ARCHS were missing TUNE_PKGARCH armv7rt2-vfp because thumb is enabled
  in TUNE_FEATURES

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/tune-cortexr4.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/conf/machine/include/tune-cortexr4.inc b/meta/conf/machine/include/tune-cortexr4.inc
index a04573c..177d2d5 100644
--- a/meta/conf/machine/include/tune-cortexr4.inc
+++ b/meta/conf/machine/include/tune-cortexr4.inc
@@ -11,4 +11,4 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r', ' -march=armv7-r
 AVAILTUNES += "cortexr4"
 ARMPKGARCH_tune-cortexr4 = "armv7r"
 TUNE_FEATURES_tune-cortexr4 = "armv7r vfp cortexr4 arm thumb"
-PACKAGE_EXTRA_ARCHS_tune-cortexr4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7r-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexr4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7r-vfp armv7rt2-vfp"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 03/15] arch-armv7a: add missing space before ?=
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 01/15] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 02/15] tune-cortexr4.inc: fix PACKAGE_EXTRA_ARCHS Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 04/15] arch-armv7a, tune-cortexa*: improve comment VFP -> HF Martin Jansa
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

---
 meta/conf/machine/include/arm/arch-armv7a.inc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
index b962e4c..f819f6b 100644
--- a/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -16,7 +16,7 @@ ARMPKGARCH_tune-armv7a-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7at-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7a-vfpv3 ?= "armv7a"
 ARMPKGARCH_tune-armv7at-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7a-neon?= "armv7a"
+ARMPKGARCH_tune-armv7a-neon ?= "armv7a"
 ARMPKGARCH_tune-armv7at-neon ?= "armv7a"
 TUNE_FEATURES_tune-armv7a ?= "arm armv7a vfp"
 TUNE_FEATURES_tune-armv7at ?= "${TUNE_FEATURES_tune-armv7a} thumb"
@@ -43,7 +43,7 @@ ARMPKGARCH_tune-armv7ahf-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7athf-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7ahf-vfpv3 ?= "armv7a"
 ARMPKGARCH_tune-armv7athf-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-neon?= "armv7a"
+ARMPKGARCH_tune-armv7ahf-neon ?= "armv7a"
 ARMPKGARCH_tune-armv7athf-neon ?= "armv7a"
 ARMPKGARCH_tune-armv7ahf-neon-vfpv4 ?= "armv7a"
 ARMPKGARCH_tune-armv7athf-neon-vfpv4 ?= "armv7a"
@@ -76,7 +76,7 @@ ARMPKGARCH_tune-armv7ab-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7atb-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7ab-vfpv3 ?= "armv7a"
 ARMPKGARCH_tune-armv7atb-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-neon?= "armv7a"
+ARMPKGARCH_tune-armv7ab-neon ?= "armv7a"
 ARMPKGARCH_tune-armv7atb-neon ?= "armv7a"
 TUNE_FEATURES_tune-armv7ab ?= "${TUNE_FEATURES_tune-armv7a} bigendian"
 TUNE_FEATURES_tune-armv7atb ?= "${TUNE_FEATURES_tune-armv7at} bigendian"
@@ -103,7 +103,7 @@ ARMPKGARCH_tune-armv7ahfb-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb-vfpv3d16 ?= "armv7a"
 ARMPKGARCH_tune-armv7ahfb-vfpv3 ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-neon?= "armv7a"
+ARMPKGARCH_tune-armv7ahfb-neon ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb-neon ?= "armv7a"
 TUNE_FEATURES_tune-armv7ahfb ?= "${TUNE_FEATURES_tune-armv7ahf} bigendian"
 TUNE_FEATURES_tune-armv7athfb ?= "${TUNE_FEATURES_tune-armv7athf} bigendian"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 04/15] arch-armv7a, tune-cortexa*: improve comment VFP -> HF
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (2 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 03/15] arch-armv7a: add missing space before ?= Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 05/15] arch-armv7a, tune-cortexa*: improve indentation Martin Jansa
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* the section bellow the comment adds only HF variants, VFP is already
  mixed in the softfp sections above (unlike armv5, armv6 tune files
  where it really was above VFP/DSP section)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv7a.inc | 4 ++--
 meta/conf/machine/include/tune-cortexa15.inc  | 2 +-
 meta/conf/machine/include/tune-cortexa17.inc  | 2 +-
 meta/conf/machine/include/tune-cortexa5.inc   | 2 +-
 meta/conf/machine/include/tune-cortexa7.inc   | 2 +-
 meta/conf/machine/include/tune-cortexa8.inc   | 2 +-
 meta/conf/machine/include/tune-cortexa9.inc   | 2 +-
 7 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
index f819f6b..1db2fd1 100644
--- a/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -35,7 +35,7 @@ PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at}
 PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3 armv7at2-vfp-vfpv3d16-vfpv3"
 PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
 
-# VFP Tunes
+# HF Tunes
 AVAILTUNES += "armv7ahf armv7athf armv7ahf-vfpv3d16 armv7athf-vfpv3d16 armv7ahf-vfpv3 armv7athf-vfpv3 armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
 ARMPKGARCH_tune-armv7ahf ?= "armv7a"
 ARMPKGARCH_tune-armv7athf ?= "armv7a"
@@ -95,7 +95,7 @@ PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vf
 PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
 
-# Big Endian + VFP
+# Big Endian + HF
 AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-neon armv7athfb-neon"
 ARMPKGARCH_tune-armv7ahfb ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb ?= "armv7a"
diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
index 802161a..1c0e674 100644
--- a/meta/conf/machine/include/tune-cortexa15.inc
+++ b/meta/conf/machine/include/tune-cortexa15.inc
@@ -20,7 +20,7 @@ PACKAGE_EXTRA_ARCHS_tune-cortexa15t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} corte
 PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa15-vfp cortexa15-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-vfp-neon cortexa15t2-vfp cortexa15t2-vfp-neon"
 
-# VFP Tunes
+# HF Tunes
 AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon"
 ARMPKGARCH_tune-cortexa15hf = "cortexa15"
 ARMPKGARCH_tune-cortexa15thf = "cortexa15"
diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
index e4d69a0..b6d8052 100644
--- a/meta/conf/machine/include/tune-cortexa17.inc
+++ b/meta/conf/machine/include/tune-cortexa17.inc
@@ -20,7 +20,7 @@ PACKAGE_EXTRA_ARCHS_tune-cortexa17t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} corte
 PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa17-vfp cortexa17-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-vfp-neon cortexa17t2-vfp cortexa17t2-vfp-neon"
 
-# VFP Tunes
+# HF Tunes
 AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon"
 ARMPKGARCH_tune-cortexa17hf = "cortexa17"
 ARMPKGARCH_tune-cortexa17thf = "cortexa17"
diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
index c263dac..664127d 100644
--- a/meta/conf/machine/include/tune-cortexa5.inc
+++ b/meta/conf/machine/include/tune-cortexa5.inc
@@ -20,7 +20,7 @@ PACKAGE_EXTRA_ARCHS_tune-cortexa5t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortex
 PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa5-vfp cortexa5-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-vfp-neon cortexa5t2-vfp cortexa5t2-vfp-neon"
 
-# VFP Tunes
+# HF Tunes
 AVAILTUNES += "cortexa5hf cortexa5thf cortexa5hf-neon cortexa5thf-neon"
 ARMPKGARCH_tune-cortexa5hf = "cortexa5"
 ARMPKGARCH_tune-cortexa5thf = "cortexa5"
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index fa4d722..40a4000 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -20,7 +20,7 @@ PACKAGE_EXTRA_ARCHS_tune-cortexa7t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortex
 PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa7-vfp cortexa7-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-vfp-neon cortexa7t2-vfp cortexa7t2-vfp-neon"
 
-# VFP Tunes
+# HF Tunes
 AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
 ARMPKGARCH_tune-cortexa7hf = "cortexa7"
 ARMPKGARCH_tune-cortexa7thf = "cortexa7"
diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
index 5621a6b..caf4653 100644
--- a/meta/conf/machine/include/tune-cortexa8.inc
+++ b/meta/conf/machine/include/tune-cortexa8.inc
@@ -20,7 +20,7 @@ PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortex
 PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa8-vfp cortexa8-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-vfp-neon cortexa8t2-vfp cortexa8t2-vfp-neon"
 
-# VFP Tunes
+# HF Tunes
 AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon cortexa8thf-neon"
 ARMPKGARCH_tune-cortexa8hf = "cortexa8"
 ARMPKGARCH_tune-cortexa8thf = "cortexa8"
diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
index 9f45667..ab86473 100644
--- a/meta/conf/machine/include/tune-cortexa9.inc
+++ b/meta/conf/machine/include/tune-cortexa9.inc
@@ -20,7 +20,7 @@ PACKAGE_EXTRA_ARCHS_tune-cortexa9t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortex
 PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa9-vfp cortexa9-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-vfp-neon cortexa9t2-vfp cortexa9t2-vfp-neon"
 
-# VFP Tunes
+# HF Tunes
 AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
 ARMPKGARCH_tune-cortexa9hf = "cortexa9"
 ARMPKGARCH_tune-cortexa9thf = "cortexa9"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 05/15] arch-armv7a, tune-cortexa*: improve indentation
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (3 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 04/15] arch-armv7a, tune-cortexa*: improve comment VFP -> HF Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 06/15] arm/arch-arm*, tune-cortexa*, tune-thunderx.inc, powerpac/arch-powerpc64.inc: Use normal assignment Martin Jansa
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* indent the assignments, so that it's easier to see the algoritm how these
  values are modified and do less errors, see fixes in next commit

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv7a.inc | 200 +++++++++++++-------------
 meta/conf/machine/include/tune-cortexa15.inc  |  48 +++----
 meta/conf/machine/include/tune-cortexa17.inc  |  48 +++----
 meta/conf/machine/include/tune-cortexa5.inc   |  48 +++----
 meta/conf/machine/include/tune-cortexa7.inc   |  54 +++----
 meta/conf/machine/include/tune-cortexa8.inc   |  48 +++----
 meta/conf/machine/include/tune-cortexa9.inc   |  48 +++----
 7 files changed, 247 insertions(+), 247 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
index 1db2fd1..c3b8869 100644
--- a/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -10,114 +10,114 @@ require conf/machine/include/arm/feature-arm-neon.inc
 
 # Little Endian base configs
 AVAILTUNES += "armv7a armv7at armv7a-vfpv3d16 armv7at-vfpv3d16 armv7a-vfpv3 armv7at-vfpv3 armv7a-neon armv7at-neon"
-ARMPKGARCH_tune-armv7a ?= "armv7a"
-ARMPKGARCH_tune-armv7at ?= "armv7a"
-ARMPKGARCH_tune-armv7a-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7at-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7a-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7at-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7a-neon ?= "armv7a"
-ARMPKGARCH_tune-armv7at-neon ?= "armv7a"
-TUNE_FEATURES_tune-armv7a ?= "arm armv7a vfp"
-TUNE_FEATURES_tune-armv7at ?= "${TUNE_FEATURES_tune-armv7a} thumb"
-TUNE_FEATURES_tune-armv7a-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7a} vfpv3d16"
-TUNE_FEATURES_tune-armv7at-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7at} vfpv3d16"
-TUNE_FEATURES_tune-armv7a-vfpv3 ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16} vfpv3"
-TUNE_FEATURES_tune-armv7at-vfpv3 ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16} vfpv3"
-TUNE_FEATURES_tune-armv7a-neon ?= "${TUNE_FEATURES_tune-armv7a} neon"
-TUNE_FEATURES_tune-armv7at-neon ?= "${TUNE_FEATURES_tune-armv7at} neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7a = "${PACKAGE_EXTRA_ARCHS_tune-armv6} armv7a armv7a-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7at = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-vfpv3d16 armv7at2-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3 armv7at2-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
+ARMPKGARCH_tune-armv7a             ?= "armv7a"
+ARMPKGARCH_tune-armv7at            ?= "armv7a"
+ARMPKGARCH_tune-armv7a-vfpv3d16    ?= "armv7a"
+ARMPKGARCH_tune-armv7at-vfpv3d16   ?= "armv7a"
+ARMPKGARCH_tune-armv7a-vfpv3       ?= "armv7a"
+ARMPKGARCH_tune-armv7at-vfpv3      ?= "armv7a"
+ARMPKGARCH_tune-armv7a-neon        ?= "armv7a"
+ARMPKGARCH_tune-armv7at-neon       ?= "armv7a"
+TUNE_FEATURES_tune-armv7a             ?= "arm armv7a vfp"
+TUNE_FEATURES_tune-armv7at            ?= "${TUNE_FEATURES_tune-armv7a} thumb"
+TUNE_FEATURES_tune-armv7a-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7a}  vfpv3d16"
+TUNE_FEATURES_tune-armv7at-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7at} vfpv3d16"
+TUNE_FEATURES_tune-armv7a-vfpv3       ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16}  vfpv3"
+TUNE_FEATURES_tune-armv7at-vfpv3      ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16} vfpv3"
+TUNE_FEATURES_tune-armv7a-neon        ?= "${TUNE_FEATURES_tune-armv7a}  neon"
+TUNE_FEATURES_tune-armv7at-neon       ?= "${TUNE_FEATURES_tune-armv7at} neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7a             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7a armv7a-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7at            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-vfpv3d16 armv7at2-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16}  armv7a-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3 armv7at2-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
 
 # HF Tunes
 AVAILTUNES += "armv7ahf armv7athf armv7ahf-vfpv3d16 armv7athf-vfpv3d16 armv7ahf-vfpv3 armv7athf-vfpv3 armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
-ARMPKGARCH_tune-armv7ahf ?= "armv7a"
-ARMPKGARCH_tune-armv7athf ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-neon ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-neon ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-neon-vfpv4 ?= "armv7a"
+ARMPKGARCH_tune-armv7ahf             ?= "armv7a"
+ARMPKGARCH_tune-armv7athf            ?= "armv7a"
+ARMPKGARCH_tune-armv7ahf-vfpv3d16    ?= "armv7a"
+ARMPKGARCH_tune-armv7athf-vfpv3d16   ?= "armv7a"
+ARMPKGARCH_tune-armv7ahf-vfpv3       ?= "armv7a"
+ARMPKGARCH_tune-armv7athf-vfpv3      ?= "armv7a"
+ARMPKGARCH_tune-armv7ahf-neon        ?= "armv7a"
+ARMPKGARCH_tune-armv7athf-neon       ?= "armv7a"
+ARMPKGARCH_tune-armv7ahf-neon-vfpv4  ?= "armv7a"
 ARMPKGARCH_tune-armv7athf-neon-vfpv4 ?= "armv7a"
-TUNE_FEATURES_tune-armv7ahf ?= "${TUNE_FEATURES_tune-armv7a} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf ?= "${TUNE_FEATURES_tune-armv7at} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-vfpv3 ?= "${TUNE_FEATURES_tune-armv7a-vfpv3} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-vfpv3 ?= "${TUNE_FEATURES_tune-armv7at-vfpv3} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-neon ?= "${TUNE_FEATURES_tune-armv7a-neon} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-neon ?= "${TUNE_FEATURES_tune-armv7at-neon} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7ahf-neon} vfpv4"
-TUNE_FEATURES_tune-armv7athf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7athf-neon} vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf} armv7ahf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} armv7ahf-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-vfpv3d16 armv7at2hf-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16} armv7ahf-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfp-vfpv3d16-vfpv3 armv7at2hf-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} armv7ahf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-neon armv7at2hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} armv7ahf-vfp-neon-vfpv4"
+TUNE_FEATURES_tune-armv7ahf             ?= "${TUNE_FEATURES_tune-armv7a}             callconvention-hard"
+TUNE_FEATURES_tune-armv7athf            ?= "${TUNE_FEATURES_tune-armv7at}            callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16}    callconvention-hard"
+TUNE_FEATURES_tune-armv7athf-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16}   callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-vfpv3       ?= "${TUNE_FEATURES_tune-armv7a-vfpv3}       callconvention-hard"
+TUNE_FEATURES_tune-armv7athf-vfpv3      ?= "${TUNE_FEATURES_tune-armv7at-vfpv3}      callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-neon        ?= "${TUNE_FEATURES_tune-armv7a-neon}        callconvention-hard"
+TUNE_FEATURES_tune-armv7athf-neon       ?= "${TUNE_FEATURES_tune-armv7at-neon}       callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  ?= "${TUNE_FEATURES_tune-armv7ahf-neon}      vfpv4"
+TUNE_FEATURES_tune-armv7athf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7athf-neon}     vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7ahf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-vfpv3d16 armv7at2hf-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16}  armv7ahf-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfp-vfpv3d16-vfpv3 armv7at2hf-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-neon armv7at2hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  armv7ahf-vfp-neon-vfpv4"
 PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-vfp-neon-vfpv4 armv7at2hf-vfp-neon-vfpv4"
 
 # Big Endian
 AVAILTUNES += "armv7ab armv7atb armv7ab-vfpv3d16 armv7atb-vfpv3d16 armv7ab-vfpv3 armv7atb-vfpv3 armv7ab-neon armv7atb-neon"
-ARMPKGARCH_tune-armv7ab ?= "armv7a"
-ARMPKGARCH_tune-armv7atb ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-neon ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-neon ?= "armv7a"
-TUNE_FEATURES_tune-armv7ab ?= "${TUNE_FEATURES_tune-armv7a} bigendian"
-TUNE_FEATURES_tune-armv7atb ?= "${TUNE_FEATURES_tune-armv7at} bigendian"
-TUNE_FEATURES_tune-armv7ab-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7atb-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7ab-vfpv3 ?= "${TUNE_FEATURES_tune-armv7a-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7atb-vfpv3 ?= "${TUNE_FEATURES_tune-armv7at-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7ab-neon ?= "${TUNE_FEATURES_tune-armv7a-neon} bigendian"
-TUNE_FEATURES_tune-armv7atb-neon ?= "${TUNE_FEATURES_tune-armv7at-neon} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab = "${PACKAGE_EXTRA_ARCHS_tune-armv6b} armv7ab-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfp-vfpv3d16 armv7at2b-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
+ARMPKGARCH_tune-armv7ab             ?= "armv7a"
+ARMPKGARCH_tune-armv7atb            ?= "armv7a"
+ARMPKGARCH_tune-armv7ab-vfpv3d16    ?= "armv7a"
+ARMPKGARCH_tune-armv7atb-vfpv3d16   ?= "armv7a"
+ARMPKGARCH_tune-armv7ab-vfpv3       ?= "armv7a"
+ARMPKGARCH_tune-armv7atb-vfpv3      ?= "armv7a"
+ARMPKGARCH_tune-armv7ab-neon        ?= "armv7a"
+ARMPKGARCH_tune-armv7atb-neon       ?= "armv7a"
+TUNE_FEATURES_tune-armv7ab             ?= "${TUNE_FEATURES_tune-armv7a}             bigendian"
+TUNE_FEATURES_tune-armv7atb            ?= "${TUNE_FEATURES_tune-armv7at}            bigendian"
+TUNE_FEATURES_tune-armv7ab-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16}    bigendian"
+TUNE_FEATURES_tune-armv7atb-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16}   bigendian"
+TUNE_FEATURES_tune-armv7ab-vfpv3       ?= "${TUNE_FEATURES_tune-armv7a-vfpv3}       bigendian"
+TUNE_FEATURES_tune-armv7atb-vfpv3      ?= "${TUNE_FEATURES_tune-armv7at-vfpv3}      bigendian"
+TUNE_FEATURES_tune-armv7ab-neon        ?= "${TUNE_FEATURES_tune-armv7a-neon}        bigendian"
+TUNE_FEATURES_tune-armv7atb-neon       ?= "${TUNE_FEATURES_tune-armv7at-neon}       bigendian"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7ab-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfp-vfpv3d16 armv7at2b-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
 
 # Big Endian + HF
 AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-neon armv7athfb-neon"
-ARMPKGARCH_tune-armv7ahfb ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-vfpv3d16 ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-vfpv3 ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-neon ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-neon ?= "armv7a"
-TUNE_FEATURES_tune-armv7ahfb ?= "${TUNE_FEATURES_tune-armv7ahf} bigendian"
-TUNE_FEATURES_tune-armv7athfb ?= "${TUNE_FEATURES_tune-armv7athf} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7ahf-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7athfb-vfpv3d16 ?= "${TUNE_FEATURES_tune-armv7athf-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-vfpv3 ?= "${TUNE_FEATURES_tune-armv7ahf-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7athfb-vfpv3 ?= "${TUNE_FEATURES_tune-armv7athf-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} bigendian"
-TUNE_FEATURES_tune-armv7athfb-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb} armv7ahfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb} armv7ahfb-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-vfpv3d16 armv7at2hfb-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16} armv7ahfb-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfp-vfpv3d16-vfpv3 armv7at2hfb-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb} armv7ahfb-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-neon armv7at2hfb-vfp-neon"
+ARMPKGARCH_tune-armv7ahfb             ?= "armv7a"
+ARMPKGARCH_tune-armv7athfb            ?= "armv7a"
+ARMPKGARCH_tune-armv7ahfb-vfpv3d16    ?= "armv7a"
+ARMPKGARCH_tune-armv7athfb-vfpv3d16   ?= "armv7a"
+ARMPKGARCH_tune-armv7ahfb-vfpv3       ?= "armv7a"
+ARMPKGARCH_tune-armv7athfb-vfpv3      ?= "armv7a"
+ARMPKGARCH_tune-armv7ahfb-neon        ?= "armv7a"
+ARMPKGARCH_tune-armv7athfb-neon       ?= "armv7a"
+TUNE_FEATURES_tune-armv7ahfb             ?= "${TUNE_FEATURES_tune-armv7ahf}             bigendian"
+TUNE_FEATURES_tune-armv7athfb            ?= "${TUNE_FEATURES_tune-armv7athf}            bigendian"
+TUNE_FEATURES_tune-armv7ahfb-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7ahf-vfpv3d16}    bigendian"
+TUNE_FEATURES_tune-armv7athfb-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7athf-vfpv3d16}   bigendian"
+TUNE_FEATURES_tune-armv7ahfb-vfpv3       ?= "${TUNE_FEATURES_tune-armv7ahf-vfpv3}       bigendian"
+TUNE_FEATURES_tune-armv7athfb-vfpv3      ?= "${TUNE_FEATURES_tune-armv7athf-vfpv3}      bigendian"
+TUNE_FEATURES_tune-armv7ahfb-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        bigendian"
+TUNE_FEATURES_tune-armv7athfb-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       bigendian"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7ahfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-vfpv3d16 armv7at2hfb-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16}  armv7ahfb-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfp-vfpv3d16-vfpv3 armv7at2hfb-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-neon armv7at2hfb-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
index 1c0e674..af2fb2d 100644
--- a/meta/conf/machine/include/tune-cortexa15.inc
+++ b/meta/conf/machine/include/tune-cortexa15.inc
@@ -7,30 +7,30 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mtune=cort
 
 # Little Endian base configs
 AVAILTUNES += "cortexa15 cortexa15t cortexa15-neon cortexa15t-neon"
-ARMPKGARCH_tune-cortexa15 = "cortexa15"
-ARMPKGARCH_tune-cortexa15t = "cortexa15"
-ARMPKGARCH_tune-cortexa15-neon = "cortexa15"
-ARMPKGARCH_tune-cortexa15t-neon = "cortexa15"
-TUNE_FEATURES_tune-cortexa15 = "${TUNE_FEATURES_tune-armv7a} cortexa15"
-TUNE_FEATURES_tune-cortexa15t = "${TUNE_FEATURES_tune-armv7at} cortexa15"
-TUNE_FEATURES_tune-cortexa15-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa15"
-TUNE_FEATURES_tune-cortexa15t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa15"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa15-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa15-vfp cortexa15-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-vfp-neon cortexa15t2-vfp cortexa15t2-vfp-neon"
+ARMPKGARCH_tune-cortexa15             = "cortexa15"
+ARMPKGARCH_tune-cortexa15t            = "cortexa15"
+ARMPKGARCH_tune-cortexa15-neon        = "cortexa15"
+ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
+TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7a}             cortexa15"
+TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7at}            cortexa15"
+TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
+TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-vfp-neon cortexa15t2-vfp cortexa15t2-vfp-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon"
-ARMPKGARCH_tune-cortexa15hf = "cortexa15"
-ARMPKGARCH_tune-cortexa15thf = "cortexa15"
-ARMPKGARCH_tune-cortexa15hf-neon = "cortexa15"
-ARMPKGARCH_tune-cortexa15thf-neon = "cortexa15"
-TUNE_FEATURES_tune-cortexa15hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa15"
-TUNE_FEATURES_tune-cortexa15thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa15"
-TUNE_FEATURES_tune-cortexa15hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa15"
-TUNE_FEATURES_tune-cortexa15thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa15"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa15hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon cortexa15t2hf-vfp cortexa15t2hf-vfp-neon"
+ARMPKGARCH_tune-cortexa15hf             = "cortexa15"
+ARMPKGARCH_tune-cortexa15thf            = "cortexa15"
+ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
+ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
+TUNE_FEATURES_tune-cortexa15hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
+TUNE_FEATURES_tune-cortexa15thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
+TUNE_FEATURES_tune-cortexa15hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
+TUNE_FEATURES_tune-cortexa15thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon cortexa15t2hf-vfp cortexa15t2hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
index b6d8052..7ddb264 100644
--- a/meta/conf/machine/include/tune-cortexa17.inc
+++ b/meta/conf/machine/include/tune-cortexa17.inc
@@ -7,30 +7,30 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa17', ' -mtune=cort
 
 # Little Endian base configs
 AVAILTUNES += "cortexa17 cortexa17t cortexa17-neon cortexa17t-neon"
-ARMPKGARCH_tune-cortexa17 = "cortexa17"
-ARMPKGARCH_tune-cortexa17t = "cortexa17"
-ARMPKGARCH_tune-cortexa17-neon = "cortexa17"
-ARMPKGARCH_tune-cortexa17t-neon = "cortexa17"
-TUNE_FEATURES_tune-cortexa17 = "${TUNE_FEATURES_tune-armv7a} cortexa17"
-TUNE_FEATURES_tune-cortexa17t = "${TUNE_FEATURES_tune-armv7at} cortexa17"
-TUNE_FEATURES_tune-cortexa17-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa17"
-TUNE_FEATURES_tune-cortexa17t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa17"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa17-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa17-vfp cortexa17t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa17-vfp cortexa17-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-vfp-neon cortexa17t2-vfp cortexa17t2-vfp-neon"
+ARMPKGARCH_tune-cortexa17             = "cortexa17"
+ARMPKGARCH_tune-cortexa17t            = "cortexa17"
+ARMPKGARCH_tune-cortexa17-neon        = "cortexa17"
+ARMPKGARCH_tune-cortexa17t-neon       = "cortexa17"
+TUNE_FEATURES_tune-cortexa17             = "${TUNE_FEATURES_tune-armv7a}             cortexa17"
+TUNE_FEATURES_tune-cortexa17t            = "${TUNE_FEATURES_tune-armv7at}            cortexa17"
+TUNE_FEATURES_tune-cortexa17-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa17"
+TUNE_FEATURES_tune-cortexa17t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa17"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa17-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa17-vfp cortexa17t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-vfp-neon cortexa17t2-vfp cortexa17t2-vfp-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon"
-ARMPKGARCH_tune-cortexa17hf = "cortexa17"
-ARMPKGARCH_tune-cortexa17thf = "cortexa17"
-ARMPKGARCH_tune-cortexa17hf-neon = "cortexa17"
-ARMPKGARCH_tune-cortexa17thf-neon = "cortexa17"
-TUNE_FEATURES_tune-cortexa17hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa17"
-TUNE_FEATURES_tune-cortexa17thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa17"
-TUNE_FEATURES_tune-cortexa17hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa17"
-TUNE_FEATURES_tune-cortexa17thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa17"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa17hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa17hf-vfp cortexa17t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa17hf-vfp cortexa17hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-vfp-neon cortexa17t2hf-vfp cortexa17t2hf-vfp-neon"
+ARMPKGARCH_tune-cortexa17hf             = "cortexa17"
+ARMPKGARCH_tune-cortexa17thf            = "cortexa17"
+ARMPKGARCH_tune-cortexa17hf-neon        = "cortexa17"
+ARMPKGARCH_tune-cortexa17thf-neon       = "cortexa17"
+TUNE_FEATURES_tune-cortexa17hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa17"
+TUNE_FEATURES_tune-cortexa17thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa17"
+TUNE_FEATURES_tune-cortexa17hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa17"
+TUNE_FEATURES_tune-cortexa17thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa17"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa17hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa17hf-vfp cortexa17t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-vfp-neon cortexa17t2hf-vfp cortexa17t2hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
index 664127d..598782d 100644
--- a/meta/conf/machine/include/tune-cortexa5.inc
+++ b/meta/conf/machine/include/tune-cortexa5.inc
@@ -7,30 +7,30 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa5', ' -mtune=corte
 
 # Little Endian base configs
 AVAILTUNES += "cortexa5 cortexa5t cortexa5-neon cortexa5t-neon"
-ARMPKGARCH_tune-cortexa5 = "cortexa5"
-ARMPKGARCH_tune-cortexa5t = "cortexa5"
-ARMPKGARCH_tune-cortexa5-neon = "cortexa5"
-ARMPKGARCH_tune-cortexa5t-neon = "cortexa5"
-TUNE_FEATURES_tune-cortexa5 = "${TUNE_FEATURES_tune-armv7a} cortexa5"
-TUNE_FEATURES_tune-cortexa5t = "${TUNE_FEATURES_tune-armv7at} cortexa5"
-TUNE_FEATURES_tune-cortexa5-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa5"
-TUNE_FEATURES_tune-cortexa5t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa5"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa5-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa5-vfp cortexa5t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa5-vfp cortexa5-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-vfp-neon cortexa5t2-vfp cortexa5t2-vfp-neon"
+ARMPKGARCH_tune-cortexa5             = "cortexa5"
+ARMPKGARCH_tune-cortexa5t            = "cortexa5"
+ARMPKGARCH_tune-cortexa5-neon        = "cortexa5"
+ARMPKGARCH_tune-cortexa5t-neon       = "cortexa5"
+TUNE_FEATURES_tune-cortexa5             = "${TUNE_FEATURES_tune-armv7a}             cortexa5"
+TUNE_FEATURES_tune-cortexa5t            = "${TUNE_FEATURES_tune-armv7at}            cortexa5"
+TUNE_FEATURES_tune-cortexa5-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa5"
+TUNE_FEATURES_tune-cortexa5t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa5"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa5-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa5-vfp cortexa5t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa5-vfp cortexa5-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-vfp-neon cortexa5t2-vfp cortexa5t2-vfp-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa5hf cortexa5thf cortexa5hf-neon cortexa5thf-neon"
-ARMPKGARCH_tune-cortexa5hf = "cortexa5"
-ARMPKGARCH_tune-cortexa5thf = "cortexa5"
-ARMPKGARCH_tune-cortexa5hf-neon = "cortexa5"
-ARMPKGARCH_tune-cortexa5thf-neon = "cortexa5"
-TUNE_FEATURES_tune-cortexa5hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa5"
-TUNE_FEATURES_tune-cortexa5thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa5"
-TUNE_FEATURES_tune-cortexa5hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa5"
-TUNE_FEATURES_tune-cortexa5thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa5"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa5hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa5hf-vfp cortexa5hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-vfp-neon cortexa5t2hf-vfp cortexa5t2hf-vfp-neon"
+ARMPKGARCH_tune-cortexa5hf             = "cortexa5"
+ARMPKGARCH_tune-cortexa5thf            = "cortexa5"
+ARMPKGARCH_tune-cortexa5hf-neon        = "cortexa5"
+ARMPKGARCH_tune-cortexa5thf-neon       = "cortexa5"
+TUNE_FEATURES_tune-cortexa5hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa5"
+TUNE_FEATURES_tune-cortexa5thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa5"
+TUNE_FEATURES_tune-cortexa5hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa5"
+TUNE_FEATURES_tune-cortexa5thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa5"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa5hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-vfp-neon cortexa5t2hf-vfp cortexa5t2hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index 40a4000..5cbb8d7 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -7,36 +7,36 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mtune=corte
 
 # Little Endian base configs
 AVAILTUNES += "cortexa7 cortexa7t cortexa7-neon cortexa7t-neon"
-ARMPKGARCH_tune-cortexa7 = "cortexa7"
-ARMPKGARCH_tune-cortexa7t = "cortexa7"
-ARMPKGARCH_tune-cortexa7-neon = "cortexa7"
-ARMPKGARCH_tune-cortexa7t-neon = "cortexa7"
-TUNE_FEATURES_tune-cortexa7 = "${TUNE_FEATURES_tune-armv7a} cortexa7"
-TUNE_FEATURES_tune-cortexa7t = "${TUNE_FEATURES_tune-armv7at} cortexa7"
-TUNE_FEATURES_tune-cortexa7-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa7"
-TUNE_FEATURES_tune-cortexa7t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa7"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa7-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa7-vfp cortexa7-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-vfp-neon cortexa7t2-vfp cortexa7t2-vfp-neon"
+ARMPKGARCH_tune-cortexa7             = "cortexa7"
+ARMPKGARCH_tune-cortexa7t            = "cortexa7"
+ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
+ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
+TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7a}             cortexa7"
+TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7at}            cortexa7"
+TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
+TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-vfp-neon cortexa7t2-vfp cortexa7t2-vfp-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
-ARMPKGARCH_tune-cortexa7hf = "cortexa7"
-ARMPKGARCH_tune-cortexa7thf = "cortexa7"
-ARMPKGARCH_tune-cortexa7hf-neon = "cortexa7"
-ARMPKGARCH_tune-cortexa7thf-neon = "cortexa7"
-ARMPKGARCH_tune-cortexa7hf-neon-vfpv4 = "cortexa7"
+ARMPKGARCH_tune-cortexa7hf             = "cortexa7"
+ARMPKGARCH_tune-cortexa7thf            = "cortexa7"
+ARMPKGARCH_tune-cortexa7hf-neon        = "cortexa7"
+ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
+ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
 ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
-TUNE_FEATURES_tune-cortexa7hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa7"
-TUNE_FEATURES_tune-cortexa7thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa7"
-TUNE_FEATURES_tune-cortexa7hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa7"
-TUNE_FEATURES_tune-cortexa7thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa7"
-TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4} cortexa7"
+TUNE_FEATURES_tune-cortexa7hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
+TUNE_FEATURES_tune-cortexa7thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
+TUNE_FEATURES_tune-cortexa7hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
+TUNE_FEATURES_tune-cortexa7thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
+TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  ?= "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
 TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa7hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon cortexa7hf-vfp-vfpv4-neon cortexa7t2hf-vfp-vfpv4-neon"
diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
index caf4653..96115db 100644
--- a/meta/conf/machine/include/tune-cortexa8.inc
+++ b/meta/conf/machine/include/tune-cortexa8.inc
@@ -7,30 +7,30 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa8', ' -mtune=corte
 
 # Little Endian base configs
 AVAILTUNES += "cortexa8 cortexa8t cortexa8-neon cortexa8t-neon"
-ARMPKGARCH_tune-cortexa8 = "cortexa8"
-ARMPKGARCH_tune-cortexa8t = "cortexa8"
-ARMPKGARCH_tune-cortexa8-neon = "cortexa8"
-ARMPKGARCH_tune-cortexa8t-neon = "cortexa8"
-TUNE_FEATURES_tune-cortexa8 = "${TUNE_FEATURES_tune-armv7a} cortexa8"
-TUNE_FEATURES_tune-cortexa8t = "${TUNE_FEATURES_tune-armv7at} cortexa8"
-TUNE_FEATURES_tune-cortexa8-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa8"
-TUNE_FEATURES_tune-cortexa8t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa8"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa8-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa8-vfp cortexa8-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-vfp-neon cortexa8t2-vfp cortexa8t2-vfp-neon"
+ARMPKGARCH_tune-cortexa8             = "cortexa8"
+ARMPKGARCH_tune-cortexa8t            = "cortexa8"
+ARMPKGARCH_tune-cortexa8-neon        = "cortexa8"
+ARMPKGARCH_tune-cortexa8t-neon       = "cortexa8"
+TUNE_FEATURES_tune-cortexa8             = "${TUNE_FEATURES_tune-armv7a}             cortexa8"
+TUNE_FEATURES_tune-cortexa8t            = "${TUNE_FEATURES_tune-armv7at}            cortexa8"
+TUNE_FEATURES_tune-cortexa8-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa8"
+TUNE_FEATURES_tune-cortexa8t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa8"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa8-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa8-vfp cortexa8-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-vfp-neon cortexa8t2-vfp cortexa8t2-vfp-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon cortexa8thf-neon"
-ARMPKGARCH_tune-cortexa8hf = "cortexa8"
-ARMPKGARCH_tune-cortexa8thf = "cortexa8"
-ARMPKGARCH_tune-cortexa8hf-neon = "cortexa8"
-ARMPKGARCH_tune-cortexa8thf-neon = "cortexa8"
-TUNE_FEATURES_tune-cortexa8hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa8"
-TUNE_FEATURES_tune-cortexa8thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa8"
-TUNE_FEATURES_tune-cortexa8hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa8"
-TUNE_FEATURES_tune-cortexa8thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa8"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa8hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon cortexa8t2hf-vfp cortexa8t2hf-vfp-neon"
+ARMPKGARCH_tune-cortexa8hf             = "cortexa8"
+ARMPKGARCH_tune-cortexa8thf            = "cortexa8"
+ARMPKGARCH_tune-cortexa8hf-neon        = "cortexa8"
+ARMPKGARCH_tune-cortexa8thf-neon       = "cortexa8"
+TUNE_FEATURES_tune-cortexa8hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa8"
+TUNE_FEATURES_tune-cortexa8thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa8"
+TUNE_FEATURES_tune-cortexa8hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa8"
+TUNE_FEATURES_tune-cortexa8thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa8"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa8hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon cortexa8t2hf-vfp cortexa8t2hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
index ab86473..d504c9f 100644
--- a/meta/conf/machine/include/tune-cortexa9.inc
+++ b/meta/conf/machine/include/tune-cortexa9.inc
@@ -7,30 +7,30 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa9', ' -mtune=corte
 
 # Little Endian base configs
 AVAILTUNES += "cortexa9 cortexa9t cortexa9-neon cortexa9t-neon"
-ARMPKGARCH_tune-cortexa9 = "cortexa9"
-ARMPKGARCH_tune-cortexa9t = "cortexa9"
-ARMPKGARCH_tune-cortexa9-neon = "cortexa9"
-ARMPKGARCH_tune-cortexa9t-neon = "cortexa9"
-TUNE_FEATURES_tune-cortexa9 = "${TUNE_FEATURES_tune-armv7a} cortexa9"
-TUNE_FEATURES_tune-cortexa9t = "${TUNE_FEATURES_tune-armv7at} cortexa9"
-TUNE_FEATURES_tune-cortexa9-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortexa9"
-TUNE_FEATURES_tune-cortexa9t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortexa9"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9 = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa9-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa9-vfp cortexa9-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-vfp-neon cortexa9t2-vfp cortexa9t2-vfp-neon"
+ARMPKGARCH_tune-cortexa9             = "cortexa9"
+ARMPKGARCH_tune-cortexa9t            = "cortexa9"
+ARMPKGARCH_tune-cortexa9-neon        = "cortexa9"
+ARMPKGARCH_tune-cortexa9t-neon       = "cortexa9"
+TUNE_FEATURES_tune-cortexa9             = "${TUNE_FEATURES_tune-armv7a}             cortexa9"
+TUNE_FEATURES_tune-cortexa9t            = "${TUNE_FEATURES_tune-armv7at}            cortexa9"
+TUNE_FEATURES_tune-cortexa9-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa9"
+TUNE_FEATURES_tune-cortexa9t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa9"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa9-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa9-vfp cortexa9-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-vfp-neon cortexa9t2-vfp cortexa9t2-vfp-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
-ARMPKGARCH_tune-cortexa9hf = "cortexa9"
-ARMPKGARCH_tune-cortexa9thf = "cortexa9"
-ARMPKGARCH_tune-cortexa9hf-neon = "cortexa9"
-ARMPKGARCH_tune-cortexa9thf-neon = "cortexa9"
-TUNE_FEATURES_tune-cortexa9hf ?= "${TUNE_FEATURES_tune-armv7ahf} cortexa9"
-TUNE_FEATURES_tune-cortexa9thf ?= "${TUNE_FEATURES_tune-armv7athf} cortexa9"
-TUNE_FEATURES_tune-cortexa9hf-neon ?= "${TUNE_FEATURES_tune-armv7ahf-neon} cortexa9"
-TUNE_FEATURES_tune-cortexa9thf-neon ?= "${TUNE_FEATURES_tune-armv7athf-neon} cortexa9"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9hf = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa9hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9thf = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon cortexa9t2hf-vfp cortexa9t2hf-vfp-neon"
+ARMPKGARCH_tune-cortexa9hf             = "cortexa9"
+ARMPKGARCH_tune-cortexa9thf            = "cortexa9"
+ARMPKGARCH_tune-cortexa9hf-neon        = "cortexa9"
+ARMPKGARCH_tune-cortexa9thf-neon       = "cortexa9"
+TUNE_FEATURES_tune-cortexa9hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa9"
+TUNE_FEATURES_tune-cortexa9thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa9"
+TUNE_FEATURES_tune-cortexa9hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa9"
+TUNE_FEATURES_tune-cortexa9thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa9"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa9hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon cortexa9t2hf-vfp cortexa9t2hf-vfp-neon"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 06/15] arm/arch-arm*, tune-cortexa*, tune-thunderx.inc, powerpac/arch-powerpc64.inc: Use normal assignment
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (4 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 05/15] arch-armv7a, tune-cortexa*: improve indentation Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 07/15] arch-armv[456]*.inc: improve indentation like armv7a Martin Jansa
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* some tunes were using weak assignment for TUNE_FEATURES, unify
  all tunes to use normal assignment so it behaves consistently
---
 meta/conf/machine/include/arm/arch-arm64.inc       |  4 +-
 meta/conf/machine/include/arm/arch-armv4.inc       |  8 +--
 meta/conf/machine/include/arm/arch-armv5-dsp.inc   | 24 ++++----
 meta/conf/machine/include/arm/arch-armv5.inc       | 24 ++++----
 meta/conf/machine/include/arm/arch-armv6.inc       | 24 ++++----
 meta/conf/machine/include/arm/arch-armv7a.inc      | 68 +++++++++++-----------
 .../machine/include/powerpc/arch-powerpc64.inc     |  2 +-
 meta/conf/machine/include/tune-cortexa15.inc       |  8 +--
 meta/conf/machine/include/tune-cortexa17.inc       |  8 +--
 meta/conf/machine/include/tune-cortexa5.inc        |  8 +--
 meta/conf/machine/include/tune-cortexa7.inc        | 12 ++--
 meta/conf/machine/include/tune-cortexa8.inc        |  8 +--
 meta/conf/machine/include/tune-cortexa9.inc        |  8 +--
 meta/conf/machine/include/tune-thunderx.inc        |  4 +-
 14 files changed, 105 insertions(+), 105 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-arm64.inc b/meta/conf/machine/include/arm/arch-arm64.inc
index 866b71f..e098e7a 100644
--- a/meta/conf/machine/include/arm/arch-arm64.inc
+++ b/meta/conf/machine/include/arm/arch-arm64.inc
@@ -10,8 +10,8 @@ MACHINEOVERRIDES .= "${@bb.utils.contains('TUNE_FEATURES', 'aarch64', ':aarch64'
 AVAILTUNES += "aarch64 aarch64_be"
 ARMPKGARCH_tune-aarch64 ?= "aarch64"
 ARMPKGARCH_tune-aarch64_be ?= "aarch64_be"
-TUNE_FEATURES_tune-aarch64 ?= "aarch64"
-TUNE_FEATURES_tune-aarch64_be ?= "${TUNE_FEATURES_tune-aarch64} bigendian"
+TUNE_FEATURES_tune-aarch64 = "aarch64"
+TUNE_FEATURES_tune-aarch64_be = "${TUNE_FEATURES_tune-aarch64} bigendian"
 BASE_LIB_tune-aarch64 = "lib64"
 BASE_LIB_tune-aarch64_be = "lib64"
 
diff --git a/meta/conf/machine/include/arm/arch-armv4.inc b/meta/conf/machine/include/arm/arch-armv4.inc
index 07e005d..ea56cca 100644
--- a/meta/conf/machine/include/arm/arch-armv4.inc
+++ b/meta/conf/machine/include/arm/arch-armv4.inc
@@ -19,8 +19,8 @@ require conf/machine/include/arm/feature-arm-thumb.inc
 AVAILTUNES += "armv4 armv4t"
 ARMPKGARCH_tune-armv4 ?= "armv4"
 ARMPKGARCH_tune-armv4t ?= "armv4"
-TUNE_FEATURES_tune-armv4 ?= "arm armv4"
-TUNE_FEATURES_tune-armv4t ?= "${TUNE_FEATURES_tune-armv4} thumb"
+TUNE_FEATURES_tune-armv4 = "arm armv4"
+TUNE_FEATURES_tune-armv4t = "${TUNE_FEATURES_tune-armv4} thumb"
 PACKAGE_EXTRA_ARCHS_tune-armv4 = "arm armv4"
 PACKAGE_EXTRA_ARCHS_tune-armv4t = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv4t"
 
@@ -28,7 +28,7 @@ PACKAGE_EXTRA_ARCHS_tune-armv4t = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv4t"
 AVAILTUNES += "armv4b armv4tb"
 ARMPKGARCH_tune-armv4b ?= "armv4"
 ARMPKGARCH_tune-armv4tb ?= "armv4"
-TUNE_FEATURES_tune-armv4b ?= "${TUNE_FEATURES_tune-armv4} bigendian"
-TUNE_FEATURES_tune-armv4tb ?= "${TUNE_FEATURES_tune-armv4t} bigendian"
+TUNE_FEATURES_tune-armv4b = "${TUNE_FEATURES_tune-armv4} bigendian"
+TUNE_FEATURES_tune-armv4tb = "${TUNE_FEATURES_tune-armv4t} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv4b = "armeb armv4b"
 PACKAGE_EXTRA_ARCHS_tune-armv4tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv4tb"
diff --git a/meta/conf/machine/include/arm/arch-armv5-dsp.inc b/meta/conf/machine/include/arm/arch-armv5-dsp.inc
index d132d92..632b88d 100644
--- a/meta/conf/machine/include/arm/arch-armv5-dsp.inc
+++ b/meta/conf/machine/include/arm/arch-armv5-dsp.inc
@@ -7,8 +7,8 @@ require conf/machine/include/arm/arch-armv5.inc
 AVAILTUNES += "armv5e armv5te"
 ARMPKGARCH_tune-armv5e ?= "armv5"
 ARMPKGARCH_tune-armv5te ?= "armv5"
-TUNE_FEATURES_tune-armv5e ?= "${TUNE_FEATURES_tune-armv5} dsp"
-TUNE_FEATURES_tune-armv5te ?= "${TUNE_FEATURES_tune-armv5t} dsp"
+TUNE_FEATURES_tune-armv5e = "${TUNE_FEATURES_tune-armv5} dsp"
+TUNE_FEATURES_tune-armv5te = "${TUNE_FEATURES_tune-armv5t} dsp"
 PACKAGE_EXTRA_ARCHS_tune-armv5e = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5e"
 PACKAGE_EXTRA_ARCHS_tune-armv5te = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5e armv5te"
 
@@ -18,10 +18,10 @@ ARMPKGARCH_tune-armv5e-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5te-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5ehf-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5tehf-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5e-vfp ?= "${TUNE_FEATURES_tune-armv5e} vfp"
-TUNE_FEATURES_tune-armv5te-vfp ?= "${TUNE_FEATURES_tune-armv5te} vfp"
-TUNE_FEATURES_tune-armv5ehf-vfp ?= "${TUNE_FEATURES_tune-armv5e-vfp} callconvention-hard"
-TUNE_FEATURES_tune-armv5tehf-vfp ?= "${TUNE_FEATURES_tune-armv5te-vfp} callconvention-hard"
+TUNE_FEATURES_tune-armv5e-vfp = "${TUNE_FEATURES_tune-armv5e} vfp"
+TUNE_FEATURES_tune-armv5te-vfp = "${TUNE_FEATURES_tune-armv5te} vfp"
+TUNE_FEATURES_tune-armv5ehf-vfp = "${TUNE_FEATURES_tune-armv5e-vfp} callconvention-hard"
+TUNE_FEATURES_tune-armv5tehf-vfp = "${TUNE_FEATURES_tune-armv5te-vfp} callconvention-hard"
 PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5-vfp} armv5e armv5e-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp} armv5e armv5te armv5e-vfp armv5te-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp} armv5ehf-vfp"
@@ -31,8 +31,8 @@ PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vf
 AVAILTUNES += "armv5eb armv5teb"
 ARMPKGARCH_tune-armv5eb ?= "armv5"
 ARMPKGARCH_tune-armv5teb ?= "armv5"
-TUNE_FEATURES_tune-armv5eb ?= "${TUNE_FEATURES_tune-armv5e} bigendian"
-TUNE_FEATURES_tune-armv5teb ?= "${TUNE_FEATURES_tune-armv5te} bigendian"
+TUNE_FEATURES_tune-armv5eb = "${TUNE_FEATURES_tune-armv5e} bigendian"
+TUNE_FEATURES_tune-armv5teb = "${TUNE_FEATURES_tune-armv5te} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv5eb = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5eb"
 PACKAGE_EXTRA_ARCHS_tune-armv5teb = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5eb armv5teb"
 
@@ -42,10 +42,10 @@ ARMPKGARCH_tune-armv5eb-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5teb-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5ehfb-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5tehfb-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5eb-vfp ?= "${TUNE_FEATURES_tune-armv5e-vfp} bigendian"
-TUNE_FEATURES_tune-armv5teb-vfp ?= "${TUNE_FEATURES_tune-armv5te-vfp} bigendian"
-TUNE_FEATURES_tune-armv5ehfb-vfp ?= "${TUNE_FEATURES_tune-armv5ehf-vfp} bigendian"
-TUNE_FEATURES_tune-armv5tehfb-vfp ?= "${TUNE_FEATURES_tune-armv5tehf-vfp} bigendian"
+TUNE_FEATURES_tune-armv5eb-vfp = "${TUNE_FEATURES_tune-armv5e-vfp} bigendian"
+TUNE_FEATURES_tune-armv5teb-vfp = "${TUNE_FEATURES_tune-armv5te-vfp} bigendian"
+TUNE_FEATURES_tune-armv5ehfb-vfp = "${TUNE_FEATURES_tune-armv5ehf-vfp} bigendian"
+TUNE_FEATURES_tune-armv5tehfb-vfp = "${TUNE_FEATURES_tune-armv5tehf-vfp} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp} armv5eb armv5eb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp} armv5eb armv5teb armv5eb-vfp armv5teb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp} armv5ehfb-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv5.inc b/meta/conf/machine/include/arm/arch-armv5.inc
index bb5848c..49e1fc4 100644
--- a/meta/conf/machine/include/arm/arch-armv5.inc
+++ b/meta/conf/machine/include/arm/arch-armv5.inc
@@ -14,8 +14,8 @@ require conf/machine/include/arm/feature-arm-vfp.inc
 AVAILTUNES += "armv5 armv5t"
 ARMPKGARCH_tune-armv5 ?= "armv5"
 ARMPKGARCH_tune-armv5t ?= "armv5"
-TUNE_FEATURES_tune-armv5 ?= "arm armv5"
-TUNE_FEATURES_tune-armv5t ?= "${TUNE_FEATURES_tune-armv5} thumb"
+TUNE_FEATURES_tune-armv5 = "arm armv5"
+TUNE_FEATURES_tune-armv5t = "${TUNE_FEATURES_tune-armv5} thumb"
 PACKAGE_EXTRA_ARCHS_tune-armv5 = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv5"
 PACKAGE_EXTRA_ARCHS_tune-armv5t = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} armv5 armv5t"
 
@@ -25,10 +25,10 @@ ARMPKGARCH_tune-armv5-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5t-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5hf-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5thf-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5-vfp ?= "${TUNE_FEATURES_tune-armv5} vfp"
-TUNE_FEATURES_tune-armv5t-vfp ?= "${TUNE_FEATURES_tune-armv5t} vfp"
-TUNE_FEATURES_tune-armv5hf-vfp ?= "${TUNE_FEATURES_tune-armv5-vfp} callconvention-hard"
-TUNE_FEATURES_tune-armv5thf-vfp ?= "${TUNE_FEATURES_tune-armv5t-vfp} callconvention-hard"
+TUNE_FEATURES_tune-armv5-vfp = "${TUNE_FEATURES_tune-armv5} vfp"
+TUNE_FEATURES_tune-armv5t-vfp = "${TUNE_FEATURES_tune-armv5t} vfp"
+TUNE_FEATURES_tune-armv5hf-vfp = "${TUNE_FEATURES_tune-armv5-vfp} callconvention-hard"
+TUNE_FEATURES_tune-armv5thf-vfp = "${TUNE_FEATURES_tune-armv5t-vfp} callconvention-hard"
 PACKAGE_EXTRA_ARCHS_tune-armv5-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5-vfp armv5t-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp = "armv5hf-vfp"
@@ -39,8 +39,8 @@ PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vf
 AVAILTUNES += "armv5b armv5tb"
 ARMPKGARCH_tune-armv5b ?= "armv5"
 ARMPKGARCH_tune-armv5tb ?= "armv5"
-TUNE_FEATURES_tune-armv5b ?= "${TUNE_FEATURES_tune-armv5} bigendian"
-TUNE_FEATURES_tune-armv5tb ?= "${TUNE_FEATURES_tune-armv5t} bigendian"
+TUNE_FEATURES_tune-armv5b = "${TUNE_FEATURES_tune-armv5} bigendian"
+TUNE_FEATURES_tune-armv5tb = "${TUNE_FEATURES_tune-armv5t} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv5b = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv5b"
 PACKAGE_EXTRA_ARCHS_tune-armv5tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4tb} armv5b armv5tb"
 
@@ -50,10 +50,10 @@ ARMPKGARCH_tune-armv5b-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5tb-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5hfb-vfp ?= "armv5"
 ARMPKGARCH_tune-armv5thfb-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5b-vfp ?= "${TUNE_FEATURES_tune-armv5-vfp} bigendian"
-TUNE_FEATURES_tune-armv5tb-vfp ?= "${TUNE_FEATURES_tune-armv5t-vfp} bigendian"
-TUNE_FEATURES_tune-armv5hfb-vfp ?= "${TUNE_FEATURES_tune-armv5hf-vfp} bigendian"
-TUNE_FEATURES_tune-armv5thfb-vfp ?= "${TUNE_FEATURES_tune-armv5thf-vfp} bigendian"
+TUNE_FEATURES_tune-armv5b-vfp = "${TUNE_FEATURES_tune-armv5-vfp} bigendian"
+TUNE_FEATURES_tune-armv5tb-vfp = "${TUNE_FEATURES_tune-armv5t-vfp} bigendian"
+TUNE_FEATURES_tune-armv5hfb-vfp = "${TUNE_FEATURES_tune-armv5hf-vfp} bigendian"
+TUNE_FEATURES_tune-armv5thfb-vfp = "${TUNE_FEATURES_tune-armv5thf-vfp} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5b-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5b-vfp armv5tb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp = "armv5hfb-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv6.inc b/meta/conf/machine/include/arm/arch-armv6.inc
index 9a3e19e..6527a2b 100644
--- a/meta/conf/machine/include/arm/arch-armv6.inc
+++ b/meta/conf/machine/include/arm/arch-armv6.inc
@@ -15,12 +15,12 @@ ARMPKGARCH_tune-armv6 ?= "armv6"
 ARMPKGARCH_tune-armv6t ?= "armv6"
 ARMPKGARCH_tune-armv6hf ?= "armv6"
 ARMPKGARCH_tune-armv6thf ?= "armv6"
-TUNE_FEATURES_tune-armv6-novfp ?= "arm armv6"
-TUNE_FEATURES_tune-armv6t-novfp ?= "${TUNE_FEATURES_tune-armv6-novfp} thumb"
-TUNE_FEATURES_tune-armv6 ?= "${TUNE_FEATURES_tune-armv6-novfp} vfp"
-TUNE_FEATURES_tune-armv6t ?= "${TUNE_FEATURES_tune-armv6t-novfp} vfp"
-TUNE_FEATURES_tune-armv6hf ?= "${TUNE_FEATURES_tune-armv6} callconvention-hard"
-TUNE_FEATURES_tune-armv6thf ?= "${TUNE_FEATURES_tune-armv6t} callconvention-hard"
+TUNE_FEATURES_tune-armv6-novfp = "arm armv6"
+TUNE_FEATURES_tune-armv6t-novfp = "${TUNE_FEATURES_tune-armv6-novfp} thumb"
+TUNE_FEATURES_tune-armv6 = "${TUNE_FEATURES_tune-armv6-novfp} vfp"
+TUNE_FEATURES_tune-armv6t = "${TUNE_FEATURES_tune-armv6t-novfp} vfp"
+TUNE_FEATURES_tune-armv6hf = "${TUNE_FEATURES_tune-armv6} callconvention-hard"
+TUNE_FEATURES_tune-armv6thf = "${TUNE_FEATURES_tune-armv6t} callconvention-hard"
 PACKAGE_EXTRA_ARCHS_tune-armv6-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5e} armv6"
 PACKAGE_EXTRA_ARCHS_tune-armv6t-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} armv6 armv6t"
 PACKAGE_EXTRA_ARCHS_tune-armv6 = "${PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp} armv6 armv6-vfp"
@@ -36,12 +36,12 @@ ARMPKGARCH_tune-armv6b ?= "armv6"
 ARMPKGARCH_tune-armv6tb ?= "armv6"
 ARMPKGARCH_tune-armv6hfb ?= "armv6"
 ARMPKGARCH_tune-armv6thfb ?= "armv6"
-TUNE_FEATURES_tune-armv6b-novfp ?= "${TUNE_FEATURES_tune-armv6-novfp} bigendian"
-TUNE_FEATURES_tune-armv6tb-novfp ?= "${TUNE_FEATURES_tune-armv6t-novfp} bigendian"
-TUNE_FEATURES_tune-armv6b ?= "${TUNE_FEATURES_tune-armv6} bigendian"
-TUNE_FEATURES_tune-armv6tb ?= "${TUNE_FEATURES_tune-armv6t} bigendian"
-TUNE_FEATURES_tune-armv6hfb ?= "${TUNE_FEATURES_tune-armv6hf} bigendian"
-TUNE_FEATURES_tune-armv6thfb ?= "${TUNE_FEATURES_tune-armv6thf} bigendian"
+TUNE_FEATURES_tune-armv6b-novfp = "${TUNE_FEATURES_tune-armv6-novfp} bigendian"
+TUNE_FEATURES_tune-armv6tb-novfp = "${TUNE_FEATURES_tune-armv6t-novfp} bigendian"
+TUNE_FEATURES_tune-armv6b = "${TUNE_FEATURES_tune-armv6} bigendian"
+TUNE_FEATURES_tune-armv6tb = "${TUNE_FEATURES_tune-armv6t} bigendian"
+TUNE_FEATURES_tune-armv6hfb = "${TUNE_FEATURES_tune-armv6hf} bigendian"
+TUNE_FEATURES_tune-armv6thfb = "${TUNE_FEATURES_tune-armv6thf} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv6b-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb} armv6b"
 PACKAGE_EXTRA_ARCHS_tune-armv6tb-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb} armv6b armv6tb"
 PACKAGE_EXTRA_ARCHS_tune-armv6b = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp} armv6b armv6b-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
index c3b8869..d0db09c 100644
--- a/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -18,14 +18,14 @@ ARMPKGARCH_tune-armv7a-vfpv3       ?= "armv7a"
 ARMPKGARCH_tune-armv7at-vfpv3      ?= "armv7a"
 ARMPKGARCH_tune-armv7a-neon        ?= "armv7a"
 ARMPKGARCH_tune-armv7at-neon       ?= "armv7a"
-TUNE_FEATURES_tune-armv7a             ?= "arm armv7a vfp"
-TUNE_FEATURES_tune-armv7at            ?= "${TUNE_FEATURES_tune-armv7a} thumb"
-TUNE_FEATURES_tune-armv7a-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7a}  vfpv3d16"
-TUNE_FEATURES_tune-armv7at-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7at} vfpv3d16"
-TUNE_FEATURES_tune-armv7a-vfpv3       ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16}  vfpv3"
-TUNE_FEATURES_tune-armv7at-vfpv3      ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16} vfpv3"
-TUNE_FEATURES_tune-armv7a-neon        ?= "${TUNE_FEATURES_tune-armv7a}  neon"
-TUNE_FEATURES_tune-armv7at-neon       ?= "${TUNE_FEATURES_tune-armv7at} neon"
+TUNE_FEATURES_tune-armv7a             = "arm armv7a vfp"
+TUNE_FEATURES_tune-armv7at            = "${TUNE_FEATURES_tune-armv7a} thumb"
+TUNE_FEATURES_tune-armv7a-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a}  vfpv3d16"
+TUNE_FEATURES_tune-armv7at-vfpv3d16   = "${TUNE_FEATURES_tune-armv7at} vfpv3d16"
+TUNE_FEATURES_tune-armv7a-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3d16}  vfpv3"
+TUNE_FEATURES_tune-armv7at-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3d16} vfpv3"
+TUNE_FEATURES_tune-armv7a-neon        = "${TUNE_FEATURES_tune-armv7a}  neon"
+TUNE_FEATURES_tune-armv7at-neon       = "${TUNE_FEATURES_tune-armv7at} neon"
 PACKAGE_EXTRA_ARCHS_tune-armv7a             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7a armv7a-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7at            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-vfpv3d16"
@@ -47,16 +47,16 @@ ARMPKGARCH_tune-armv7ahf-neon        ?= "armv7a"
 ARMPKGARCH_tune-armv7athf-neon       ?= "armv7a"
 ARMPKGARCH_tune-armv7ahf-neon-vfpv4  ?= "armv7a"
 ARMPKGARCH_tune-armv7athf-neon-vfpv4 ?= "armv7a"
-TUNE_FEATURES_tune-armv7ahf             ?= "${TUNE_FEATURES_tune-armv7a}             callconvention-hard"
-TUNE_FEATURES_tune-armv7athf            ?= "${TUNE_FEATURES_tune-armv7at}            callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16}    callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16}   callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-vfpv3       ?= "${TUNE_FEATURES_tune-armv7a-vfpv3}       callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-vfpv3      ?= "${TUNE_FEATURES_tune-armv7at-vfpv3}      callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-neon        ?= "${TUNE_FEATURES_tune-armv7a-neon}        callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-neon       ?= "${TUNE_FEATURES_tune-armv7at-neon}       callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  ?= "${TUNE_FEATURES_tune-armv7ahf-neon}      vfpv4"
-TUNE_FEATURES_tune-armv7athf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7athf-neon}     vfpv4"
+TUNE_FEATURES_tune-armv7ahf             = "${TUNE_FEATURES_tune-armv7a}             callconvention-hard"
+TUNE_FEATURES_tune-armv7athf            = "${TUNE_FEATURES_tune-armv7at}            callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a-vfpv3d16}    callconvention-hard"
+TUNE_FEATURES_tune-armv7athf-vfpv3d16   = "${TUNE_FEATURES_tune-armv7at-vfpv3d16}   callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3}       callconvention-hard"
+TUNE_FEATURES_tune-armv7athf-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3}      callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        callconvention-hard"
+TUNE_FEATURES_tune-armv7athf-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       callconvention-hard"
+TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon}      vfpv4"
+TUNE_FEATURES_tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon}     vfpv4"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7ahf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-vfpv3d16"
@@ -78,14 +78,14 @@ ARMPKGARCH_tune-armv7ab-vfpv3       ?= "armv7a"
 ARMPKGARCH_tune-armv7atb-vfpv3      ?= "armv7a"
 ARMPKGARCH_tune-armv7ab-neon        ?= "armv7a"
 ARMPKGARCH_tune-armv7atb-neon       ?= "armv7a"
-TUNE_FEATURES_tune-armv7ab             ?= "${TUNE_FEATURES_tune-armv7a}             bigendian"
-TUNE_FEATURES_tune-armv7atb            ?= "${TUNE_FEATURES_tune-armv7at}            bigendian"
-TUNE_FEATURES_tune-armv7ab-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7a-vfpv3d16}    bigendian"
-TUNE_FEATURES_tune-armv7atb-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7at-vfpv3d16}   bigendian"
-TUNE_FEATURES_tune-armv7ab-vfpv3       ?= "${TUNE_FEATURES_tune-armv7a-vfpv3}       bigendian"
-TUNE_FEATURES_tune-armv7atb-vfpv3      ?= "${TUNE_FEATURES_tune-armv7at-vfpv3}      bigendian"
-TUNE_FEATURES_tune-armv7ab-neon        ?= "${TUNE_FEATURES_tune-armv7a-neon}        bigendian"
-TUNE_FEATURES_tune-armv7atb-neon       ?= "${TUNE_FEATURES_tune-armv7at-neon}       bigendian"
+TUNE_FEATURES_tune-armv7ab             = "${TUNE_FEATURES_tune-armv7a}             bigendian"
+TUNE_FEATURES_tune-armv7atb            = "${TUNE_FEATURES_tune-armv7at}            bigendian"
+TUNE_FEATURES_tune-armv7ab-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a-vfpv3d16}    bigendian"
+TUNE_FEATURES_tune-armv7atb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7at-vfpv3d16}   bigendian"
+TUNE_FEATURES_tune-armv7ab-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3}       bigendian"
+TUNE_FEATURES_tune-armv7atb-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3}      bigendian"
+TUNE_FEATURES_tune-armv7ab-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        bigendian"
+TUNE_FEATURES_tune-armv7atb-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7ab-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-vfpv3d16"
@@ -105,14 +105,14 @@ ARMPKGARCH_tune-armv7ahfb-vfpv3       ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb-vfpv3      ?= "armv7a"
 ARMPKGARCH_tune-armv7ahfb-neon        ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb-neon       ?= "armv7a"
-TUNE_FEATURES_tune-armv7ahfb             ?= "${TUNE_FEATURES_tune-armv7ahf}             bigendian"
-TUNE_FEATURES_tune-armv7athfb            ?= "${TUNE_FEATURES_tune-armv7athf}            bigendian"
-TUNE_FEATURES_tune-armv7ahfb-vfpv3d16    ?= "${TUNE_FEATURES_tune-armv7ahf-vfpv3d16}    bigendian"
-TUNE_FEATURES_tune-armv7athfb-vfpv3d16   ?= "${TUNE_FEATURES_tune-armv7athf-vfpv3d16}   bigendian"
-TUNE_FEATURES_tune-armv7ahfb-vfpv3       ?= "${TUNE_FEATURES_tune-armv7ahf-vfpv3}       bigendian"
-TUNE_FEATURES_tune-armv7athfb-vfpv3      ?= "${TUNE_FEATURES_tune-armv7athf-vfpv3}      bigendian"
-TUNE_FEATURES_tune-armv7ahfb-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        bigendian"
-TUNE_FEATURES_tune-armv7athfb-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       bigendian"
+TUNE_FEATURES_tune-armv7ahfb             = "${TUNE_FEATURES_tune-armv7ahf}             bigendian"
+TUNE_FEATURES_tune-armv7athfb            = "${TUNE_FEATURES_tune-armv7athf}            bigendian"
+TUNE_FEATURES_tune-armv7ahfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ahf-vfpv3d16}    bigendian"
+TUNE_FEATURES_tune-armv7athfb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7athf-vfpv3d16}   bigendian"
+TUNE_FEATURES_tune-armv7ahfb-vfpv3       = "${TUNE_FEATURES_tune-armv7ahf-vfpv3}       bigendian"
+TUNE_FEATURES_tune-armv7athfb-vfpv3      = "${TUNE_FEATURES_tune-armv7athf-vfpv3}      bigendian"
+TUNE_FEATURES_tune-armv7ahfb-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        bigendian"
+TUNE_FEATURES_tune-armv7athfb-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7ahfb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-vfpv3d16"
diff --git a/meta/conf/machine/include/powerpc/arch-powerpc64.inc b/meta/conf/machine/include/powerpc/arch-powerpc64.inc
index bfc107e..49419b6 100644
--- a/meta/conf/machine/include/powerpc/arch-powerpc64.inc
+++ b/meta/conf/machine/include/powerpc/arch-powerpc64.inc
@@ -8,7 +8,7 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'm64', ' -m64', '', d)}"
 TUNE_ARCH .= "${@bb.utils.contains('TUNE_FEATURES', [ 'm64' ], 'powerpc64', '', d)}"
 
 AVAILTUNES += "powerpc64"
-TUNE_FEATURES_tune-powerpc64 ?= "m64 fpu-hard"
+TUNE_FEATURES_tune-powerpc64 = "m64 fpu-hard"
 BASE_LIB_tune-powerpc64 = "lib64"
 TUNE_PKGARCH_tune-powerpc64 = "powerpc64"
 PACKAGE_EXTRA_ARCHS_tune-powerpc64 = "powerpc64"
diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
index af2fb2d..b4a693d 100644
--- a/meta/conf/machine/include/tune-cortexa15.inc
+++ b/meta/conf/machine/include/tune-cortexa15.inc
@@ -26,10 +26,10 @@ ARMPKGARCH_tune-cortexa15hf             = "cortexa15"
 ARMPKGARCH_tune-cortexa15thf            = "cortexa15"
 ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
 ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
-TUNE_FEATURES_tune-cortexa15hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
-TUNE_FEATURES_tune-cortexa15thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
-TUNE_FEATURES_tune-cortexa15hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
-TUNE_FEATURES_tune-cortexa15thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
+TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
+TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
+TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
+TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
index 7ddb264..69232d0 100644
--- a/meta/conf/machine/include/tune-cortexa17.inc
+++ b/meta/conf/machine/include/tune-cortexa17.inc
@@ -26,10 +26,10 @@ ARMPKGARCH_tune-cortexa17hf             = "cortexa17"
 ARMPKGARCH_tune-cortexa17thf            = "cortexa17"
 ARMPKGARCH_tune-cortexa17hf-neon        = "cortexa17"
 ARMPKGARCH_tune-cortexa17thf-neon       = "cortexa17"
-TUNE_FEATURES_tune-cortexa17hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa17"
-TUNE_FEATURES_tune-cortexa17thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa17"
-TUNE_FEATURES_tune-cortexa17hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa17"
-TUNE_FEATURES_tune-cortexa17thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa17"
+TUNE_FEATURES_tune-cortexa17hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa17"
+TUNE_FEATURES_tune-cortexa17thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa17"
+TUNE_FEATURES_tune-cortexa17hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa17"
+TUNE_FEATURES_tune-cortexa17thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa17"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa17hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa17hf-vfp cortexa17t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
index 598782d..b649641 100644
--- a/meta/conf/machine/include/tune-cortexa5.inc
+++ b/meta/conf/machine/include/tune-cortexa5.inc
@@ -26,10 +26,10 @@ ARMPKGARCH_tune-cortexa5hf             = "cortexa5"
 ARMPKGARCH_tune-cortexa5thf            = "cortexa5"
 ARMPKGARCH_tune-cortexa5hf-neon        = "cortexa5"
 ARMPKGARCH_tune-cortexa5thf-neon       = "cortexa5"
-TUNE_FEATURES_tune-cortexa5hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa5"
-TUNE_FEATURES_tune-cortexa5thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa5"
-TUNE_FEATURES_tune-cortexa5hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa5"
-TUNE_FEATURES_tune-cortexa5thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa5"
+TUNE_FEATURES_tune-cortexa5hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa5"
+TUNE_FEATURES_tune-cortexa5thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa5"
+TUNE_FEATURES_tune-cortexa5hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa5"
+TUNE_FEATURES_tune-cortexa5thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa5"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa5hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index 5cbb8d7..0f24183 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -28,12 +28,12 @@ ARMPKGARCH_tune-cortexa7hf-neon        = "cortexa7"
 ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
 ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
 ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
-TUNE_FEATURES_tune-cortexa7hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
-TUNE_FEATURES_tune-cortexa7thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
-TUNE_FEATURES_tune-cortexa7hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
-TUNE_FEATURES_tune-cortexa7thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
-TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  ?= "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
-TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 ?= "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
+TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
+TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
+TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
+TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
+TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
+TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
index 96115db..71706e4 100644
--- a/meta/conf/machine/include/tune-cortexa8.inc
+++ b/meta/conf/machine/include/tune-cortexa8.inc
@@ -26,10 +26,10 @@ ARMPKGARCH_tune-cortexa8hf             = "cortexa8"
 ARMPKGARCH_tune-cortexa8thf            = "cortexa8"
 ARMPKGARCH_tune-cortexa8hf-neon        = "cortexa8"
 ARMPKGARCH_tune-cortexa8thf-neon       = "cortexa8"
-TUNE_FEATURES_tune-cortexa8hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa8"
-TUNE_FEATURES_tune-cortexa8thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa8"
-TUNE_FEATURES_tune-cortexa8hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa8"
-TUNE_FEATURES_tune-cortexa8thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa8"
+TUNE_FEATURES_tune-cortexa8hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa8"
+TUNE_FEATURES_tune-cortexa8thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa8"
+TUNE_FEATURES_tune-cortexa8hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa8"
+TUNE_FEATURES_tune-cortexa8thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa8"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa8hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
index d504c9f..ddd6f77 100644
--- a/meta/conf/machine/include/tune-cortexa9.inc
+++ b/meta/conf/machine/include/tune-cortexa9.inc
@@ -26,10 +26,10 @@ ARMPKGARCH_tune-cortexa9hf             = "cortexa9"
 ARMPKGARCH_tune-cortexa9thf            = "cortexa9"
 ARMPKGARCH_tune-cortexa9hf-neon        = "cortexa9"
 ARMPKGARCH_tune-cortexa9thf-neon       = "cortexa9"
-TUNE_FEATURES_tune-cortexa9hf             ?= "${TUNE_FEATURES_tune-armv7ahf}             cortexa9"
-TUNE_FEATURES_tune-cortexa9thf            ?= "${TUNE_FEATURES_tune-armv7athf}            cortexa9"
-TUNE_FEATURES_tune-cortexa9hf-neon        ?= "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa9"
-TUNE_FEATURES_tune-cortexa9thf-neon       ?= "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa9"
+TUNE_FEATURES_tune-cortexa9hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa9"
+TUNE_FEATURES_tune-cortexa9thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa9"
+TUNE_FEATURES_tune-cortexa9hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa9"
+TUNE_FEATURES_tune-cortexa9thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa9"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa9hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-vfp-neon"
diff --git a/meta/conf/machine/include/tune-thunderx.inc b/meta/conf/machine/include/tune-thunderx.inc
index 4888d0c..3d43b0f 100644
--- a/meta/conf/machine/include/tune-thunderx.inc
+++ b/meta/conf/machine/include/tune-thunderx.inc
@@ -10,8 +10,8 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'thunderx', ' -mcpu=thunde
 ARMPKGARCH_tune-thunderx ?= "thunderx"
 ARMPKGARCH_tune-thunderx_be ?= "thunderx_be"
 
-TUNE_FEATURES_tune-thunderx ?= "${TUNE_FEATURES_tune-aarch64} thunderx"
-TUNE_FEATURES_tune-thunderx_be ?= "${TUNE_FEATURES_tune-thunderx} bigendian"
+TUNE_FEATURES_tune-thunderx = "${TUNE_FEATURES_tune-aarch64} thunderx"
+TUNE_FEATURES_tune-thunderx_be = "${TUNE_FEATURES_tune-thunderx} bigendian"
 BASE_LIB_tune-thunderx = "lib64"
 BASE_LIB_tune-thunderx_be = "lib64"
 
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 07/15] arch-armv[456]*.inc: improve indentation like armv7a
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (5 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 06/15] arm/arch-arm*, tune-cortexa*, tune-thunderx.inc, powerpac/arch-powerpc64.inc: Use normal assignment Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 08/15] arch-armv5.inc: drop duplicate ARMPKGSFX_DSP and PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp Martin Jansa
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv4.inc     | 12 ++---
 meta/conf/machine/include/arm/arch-armv5-dsp.inc | 48 +++++++++---------
 meta/conf/machine/include/arm/arch-armv5.inc     | 50 +++++++++----------
 meta/conf/machine/include/arm/arch-armv6.inc     | 62 ++++++++++++------------
 4 files changed, 86 insertions(+), 86 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv4.inc b/meta/conf/machine/include/arm/arch-armv4.inc
index ea56cca..813ed15 100644
--- a/meta/conf/machine/include/arm/arch-armv4.inc
+++ b/meta/conf/machine/include/arm/arch-armv4.inc
@@ -17,18 +17,18 @@ require conf/machine/include/arm/feature-arm-thumb.inc
 
 # Little Endian
 AVAILTUNES += "armv4 armv4t"
-ARMPKGARCH_tune-armv4 ?= "armv4"
+ARMPKGARCH_tune-armv4  ?= "armv4"
 ARMPKGARCH_tune-armv4t ?= "armv4"
-TUNE_FEATURES_tune-armv4 = "arm armv4"
+TUNE_FEATURES_tune-armv4  = "arm armv4"
 TUNE_FEATURES_tune-armv4t = "${TUNE_FEATURES_tune-armv4} thumb"
-PACKAGE_EXTRA_ARCHS_tune-armv4 = "arm armv4"
+PACKAGE_EXTRA_ARCHS_tune-armv4  = "arm armv4"
 PACKAGE_EXTRA_ARCHS_tune-armv4t = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv4t"
 
 # Big Endian
 AVAILTUNES += "armv4b armv4tb"
-ARMPKGARCH_tune-armv4b ?= "armv4"
+ARMPKGARCH_tune-armv4b  ?= "armv4"
 ARMPKGARCH_tune-armv4tb ?= "armv4"
-TUNE_FEATURES_tune-armv4b = "${TUNE_FEATURES_tune-armv4} bigendian"
+TUNE_FEATURES_tune-armv4b  = "${TUNE_FEATURES_tune-armv4}  bigendian"
 TUNE_FEATURES_tune-armv4tb = "${TUNE_FEATURES_tune-armv4t} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv4b = "armeb armv4b"
+PACKAGE_EXTRA_ARCHS_tune-armv4b  = "armeb armv4b"
 PACKAGE_EXTRA_ARCHS_tune-armv4tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv4tb"
diff --git a/meta/conf/machine/include/arm/arch-armv5-dsp.inc b/meta/conf/machine/include/arm/arch-armv5-dsp.inc
index 632b88d..f204920 100644
--- a/meta/conf/machine/include/arm/arch-armv5-dsp.inc
+++ b/meta/conf/machine/include/arm/arch-armv5-dsp.inc
@@ -5,48 +5,48 @@ require conf/machine/include/arm/arch-armv5.inc
 
 # Little Endian
 AVAILTUNES += "armv5e armv5te"
-ARMPKGARCH_tune-armv5e ?= "armv5"
+ARMPKGARCH_tune-armv5e  ?= "armv5"
 ARMPKGARCH_tune-armv5te ?= "armv5"
-TUNE_FEATURES_tune-armv5e = "${TUNE_FEATURES_tune-armv5} dsp"
+TUNE_FEATURES_tune-armv5e  = "${TUNE_FEATURES_tune-armv5}  dsp"
 TUNE_FEATURES_tune-armv5te = "${TUNE_FEATURES_tune-armv5t} dsp"
-PACKAGE_EXTRA_ARCHS_tune-armv5e = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5e"
+PACKAGE_EXTRA_ARCHS_tune-armv5e  = "${PACKAGE_EXTRA_ARCHS_tune-armv5}  armv5e"
 PACKAGE_EXTRA_ARCHS_tune-armv5te = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5e armv5te"
 
 # Little Endian + VFP/DSP
 AVAILTUNES += "armv5e-vfp armv5te-vfp armv5ehf-vfp armv5tehf-vfp"
-ARMPKGARCH_tune-armv5e-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5te-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5ehf-vfp ?= "armv5"
+ARMPKGARCH_tune-armv5e-vfp    ?= "armv5"
+ARMPKGARCH_tune-armv5te-vfp   ?= "armv5"
+ARMPKGARCH_tune-armv5ehf-vfp  ?= "armv5"
 ARMPKGARCH_tune-armv5tehf-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5e-vfp = "${TUNE_FEATURES_tune-armv5e} vfp"
-TUNE_FEATURES_tune-armv5te-vfp = "${TUNE_FEATURES_tune-armv5te} vfp"
-TUNE_FEATURES_tune-armv5ehf-vfp = "${TUNE_FEATURES_tune-armv5e-vfp} callconvention-hard"
+TUNE_FEATURES_tune-armv5e-vfp    = "${TUNE_FEATURES_tune-armv5e}      vfp"
+TUNE_FEATURES_tune-armv5te-vfp   = "${TUNE_FEATURES_tune-armv5te}     vfp"
+TUNE_FEATURES_tune-armv5ehf-vfp  = "${TUNE_FEATURES_tune-armv5e-vfp}  callconvention-hard"
 TUNE_FEATURES_tune-armv5tehf-vfp = "${TUNE_FEATURES_tune-armv5te-vfp} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5-vfp} armv5e armv5e-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp} armv5e armv5te armv5e-vfp armv5te-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp} armv5ehf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5-vfp}    armv5e armv5e-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp   = "${PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp}   armv5e armv5te armv5e-vfp armv5te-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp}  armv5ehf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
 
 # Big Endian
 AVAILTUNES += "armv5eb armv5teb"
-ARMPKGARCH_tune-armv5eb ?= "armv5"
+ARMPKGARCH_tune-armv5eb  ?= "armv5"
 ARMPKGARCH_tune-armv5teb ?= "armv5"
-TUNE_FEATURES_tune-armv5eb = "${TUNE_FEATURES_tune-armv5e} bigendian"
+TUNE_FEATURES_tune-armv5eb  = "${TUNE_FEATURES_tune-armv5e}  bigendian"
 TUNE_FEATURES_tune-armv5teb = "${TUNE_FEATURES_tune-armv5te} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5eb = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5eb"
+PACKAGE_EXTRA_ARCHS_tune-armv5eb  = "${PACKAGE_EXTRA_ARCHS_tune-armv5b}  armv5eb"
 PACKAGE_EXTRA_ARCHS_tune-armv5teb = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5eb armv5teb"
 
 # Big Endian + VFP/DSP
 AVAILTUNES += "armv5eb-vfp armv5teb-vfp armv5ehfb-vfp armv5tehfb-vfp"
-ARMPKGARCH_tune-armv5eb-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5teb-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5ehfb-vfp ?= "armv5"
+ARMPKGARCH_tune-armv5eb-vfp    ?= "armv5"
+ARMPKGARCH_tune-armv5teb-vfp   ?= "armv5"
+ARMPKGARCH_tune-armv5ehfb-vfp  ?= "armv5"
 ARMPKGARCH_tune-armv5tehfb-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5eb-vfp = "${TUNE_FEATURES_tune-armv5e-vfp} bigendian"
-TUNE_FEATURES_tune-armv5teb-vfp = "${TUNE_FEATURES_tune-armv5te-vfp} bigendian"
-TUNE_FEATURES_tune-armv5ehfb-vfp = "${TUNE_FEATURES_tune-armv5ehf-vfp} bigendian"
+TUNE_FEATURES_tune-armv5eb-vfp    = "${TUNE_FEATURES_tune-armv5e-vfp}    bigendian"
+TUNE_FEATURES_tune-armv5teb-vfp   = "${TUNE_FEATURES_tune-armv5te-vfp}   bigendian"
+TUNE_FEATURES_tune-armv5ehfb-vfp  = "${TUNE_FEATURES_tune-armv5ehf-vfp}  bigendian"
 TUNE_FEATURES_tune-armv5tehfb-vfp = "${TUNE_FEATURES_tune-armv5tehf-vfp} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp} armv5eb armv5eb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp} armv5eb armv5teb armv5eb-vfp armv5teb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp} armv5ehfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp}  armv5eb armv5eb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp   = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp} armv5eb armv5teb armv5eb-vfp armv5teb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp}  armv5ehfb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5tehfb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thfb-vfp} armv5ehfb-vfp armv5tehfb-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv5.inc b/meta/conf/machine/include/arm/arch-armv5.inc
index 49e1fc4..6a17972 100644
--- a/meta/conf/machine/include/arm/arch-armv5.inc
+++ b/meta/conf/machine/include/arm/arch-armv5.inc
@@ -12,49 +12,49 @@ require conf/machine/include/arm/feature-arm-vfp.inc
 
 # Little Endian
 AVAILTUNES += "armv5 armv5t"
-ARMPKGARCH_tune-armv5 ?= "armv5"
+ARMPKGARCH_tune-armv5  ?= "armv5"
 ARMPKGARCH_tune-armv5t ?= "armv5"
-TUNE_FEATURES_tune-armv5 = "arm armv5"
+TUNE_FEATURES_tune-armv5  = "arm armv5"
 TUNE_FEATURES_tune-armv5t = "${TUNE_FEATURES_tune-armv5} thumb"
-PACKAGE_EXTRA_ARCHS_tune-armv5 = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv5"
+PACKAGE_EXTRA_ARCHS_tune-armv5  = "${PACKAGE_EXTRA_ARCHS_tune-armv4}  armv5"
 PACKAGE_EXTRA_ARCHS_tune-armv5t = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} armv5 armv5t"
 
 # Little Endian + VFP/DSP
 AVAILTUNES += "armv5-vfp armv5t-vfp armv5hf-vfp armv5thf-vfp"
-ARMPKGARCH_tune-armv5-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5t-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5hf-vfp ?= "armv5"
+ARMPKGARCH_tune-armv5-vfp    ?= "armv5"
+ARMPKGARCH_tune-armv5t-vfp   ?= "armv5"
+ARMPKGARCH_tune-armv5hf-vfp  ?= "armv5"
 ARMPKGARCH_tune-armv5thf-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5-vfp = "${TUNE_FEATURES_tune-armv5} vfp"
-TUNE_FEATURES_tune-armv5t-vfp = "${TUNE_FEATURES_tune-armv5t} vfp"
-TUNE_FEATURES_tune-armv5hf-vfp = "${TUNE_FEATURES_tune-armv5-vfp} callconvention-hard"
+TUNE_FEATURES_tune-armv5-vfp    = "${TUNE_FEATURES_tune-armv5}      vfp"
+TUNE_FEATURES_tune-armv5t-vfp   = "${TUNE_FEATURES_tune-armv5t}     vfp"
+TUNE_FEATURES_tune-armv5hf-vfp  = "${TUNE_FEATURES_tune-armv5-vfp}  callconvention-hard"
 TUNE_FEATURES_tune-armv5thf-vfp = "${TUNE_FEATURES_tune-armv5t-vfp} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv5-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5-vfp armv5t-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp = "armv5hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp = "armv5hf-vfp armv5thf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5-vfp     = "${PACKAGE_EXTRA_ARCHS_tune-armv5}  armv5-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5-vfp armv5t-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp   = "armv5hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp  = "armv5hf-vfp armv5thf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
 
 # Big Endian
 AVAILTUNES += "armv5b armv5tb"
-ARMPKGARCH_tune-armv5b ?= "armv5"
+ARMPKGARCH_tune-armv5b  ?= "armv5"
 ARMPKGARCH_tune-armv5tb ?= "armv5"
-TUNE_FEATURES_tune-armv5b = "${TUNE_FEATURES_tune-armv5} bigendian"
+TUNE_FEATURES_tune-armv5b  = "${TUNE_FEATURES_tune-armv5}  bigendian"
 TUNE_FEATURES_tune-armv5tb = "${TUNE_FEATURES_tune-armv5t} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5b = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv5b"
+PACKAGE_EXTRA_ARCHS_tune-armv5b  = "${PACKAGE_EXTRA_ARCHS_tune-armv4b}  armv5b"
 PACKAGE_EXTRA_ARCHS_tune-armv5tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4tb} armv5b armv5tb"
 
 # Big Endian + VFP/DSP
 AVAILTUNES += "armv5b-vfp armv5tb-vfp armv5hfb-vfp armv5thfb-vfp"
-ARMPKGARCH_tune-armv5b-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5tb-vfp ?= "armv5"
-ARMPKGARCH_tune-armv5hfb-vfp ?= "armv5"
+ARMPKGARCH_tune-armv5b-vfp    ?= "armv5"
+ARMPKGARCH_tune-armv5tb-vfp   ?= "armv5"
+ARMPKGARCH_tune-armv5hfb-vfp  ?= "armv5"
 ARMPKGARCH_tune-armv5thfb-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5b-vfp = "${TUNE_FEATURES_tune-armv5-vfp} bigendian"
-TUNE_FEATURES_tune-armv5tb-vfp = "${TUNE_FEATURES_tune-armv5t-vfp} bigendian"
-TUNE_FEATURES_tune-armv5hfb-vfp = "${TUNE_FEATURES_tune-armv5hf-vfp} bigendian"
+TUNE_FEATURES_tune-armv5b-vfp    = "${TUNE_FEATURES_tune-armv5-vfp}    bigendian"
+TUNE_FEATURES_tune-armv5tb-vfp   = "${TUNE_FEATURES_tune-armv5t-vfp}   bigendian"
+TUNE_FEATURES_tune-armv5hfb-vfp  = "${TUNE_FEATURES_tune-armv5hf-vfp}  bigendian"
 TUNE_FEATURES_tune-armv5thfb-vfp = "${TUNE_FEATURES_tune-armv5thf-vfp} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5b-vfp armv5tb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp = "armv5hfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5b}  armv5b-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp   = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5b-vfp armv5tb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp  = "armv5hfb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5thfb-vfp = "armv5hfb-vfp armv5thfb-vfp"
diff --git a/meta/conf/machine/include/arm/arch-armv6.inc b/meta/conf/machine/include/arm/arch-armv6.inc
index 6527a2b..4c93f2c 100644
--- a/meta/conf/machine/include/arm/arch-armv6.inc
+++ b/meta/conf/machine/include/arm/arch-armv6.inc
@@ -9,42 +9,42 @@ require conf/machine/include/arm/arch-armv5-dsp.inc
 
 # Little Endian
 AVAILTUNES += "armv6-novfp armv6t-novfp armv6 armv6t armv6hf armv6thf"
-ARMPKGARCH_tune-armv6-novfp ?= "armv6"
+ARMPKGARCH_tune-armv6-novfp  ?= "armv6"
 ARMPKGARCH_tune-armv6t-novfp ?= "armv6"
-ARMPKGARCH_tune-armv6 ?= "armv6"
-ARMPKGARCH_tune-armv6t ?= "armv6"
-ARMPKGARCH_tune-armv6hf ?= "armv6"
-ARMPKGARCH_tune-armv6thf ?= "armv6"
-TUNE_FEATURES_tune-armv6-novfp = "arm armv6"
-TUNE_FEATURES_tune-armv6t-novfp = "${TUNE_FEATURES_tune-armv6-novfp} thumb"
-TUNE_FEATURES_tune-armv6 = "${TUNE_FEATURES_tune-armv6-novfp} vfp"
-TUNE_FEATURES_tune-armv6t = "${TUNE_FEATURES_tune-armv6t-novfp} vfp"
-TUNE_FEATURES_tune-armv6hf = "${TUNE_FEATURES_tune-armv6} callconvention-hard"
-TUNE_FEATURES_tune-armv6thf = "${TUNE_FEATURES_tune-armv6t} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv6-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5e} armv6"
+ARMPKGARCH_tune-armv6        ?= "armv6"
+ARMPKGARCH_tune-armv6t       ?= "armv6"
+ARMPKGARCH_tune-armv6hf      ?= "armv6"
+ARMPKGARCH_tune-armv6thf     ?= "armv6"
+TUNE_FEATURES_tune-armv6-novfp  = "arm armv6"
+TUNE_FEATURES_tune-armv6t-novfp = "${TUNE_FEATURES_tune-armv6-novfp}  thumb"
+TUNE_FEATURES_tune-armv6        = "${TUNE_FEATURES_tune-armv6-novfp}  vfp"
+TUNE_FEATURES_tune-armv6t       = "${TUNE_FEATURES_tune-armv6t-novfp} vfp"
+TUNE_FEATURES_tune-armv6hf      = "${TUNE_FEATURES_tune-armv6}        callconvention-hard"
+TUNE_FEATURES_tune-armv6thf     = "${TUNE_FEATURES_tune-armv6t}       callconvention-hard"
+PACKAGE_EXTRA_ARCHS_tune-armv6-novfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5e}  armv6"
 PACKAGE_EXTRA_ARCHS_tune-armv6t-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} armv6 armv6t"
-PACKAGE_EXTRA_ARCHS_tune-armv6 = "${PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp} armv6 armv6-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6t = "${PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp} armv6 armv6t armv6-vfp armv6t-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6hf = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp} armv6hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6thf = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp} armv6hf-vfp armv6thf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6        = "${PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp}  armv6 armv6-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6t       = "${PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp} armv6 armv6t armv6-vfp armv6t-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6hf      = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp}  armv6hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6thf     = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp} armv6hf-vfp armv6thf-vfp"
 
 # Big Endian
 AVAILTUNES += "armv6b-novfp armv6tb-novfp armv6b armv6tb armv6hfb armv6thfb"
-ARMPKGARCH_tune-armv6b-novfp ?= "armv6"
+ARMPKGARCH_tune-armv6b-novfp  ?= "armv6"
 ARMPKGARCH_tune-armv6tb-novfp ?= "armv6"
-ARMPKGARCH_tune-armv6b ?= "armv6"
-ARMPKGARCH_tune-armv6tb ?= "armv6"
-ARMPKGARCH_tune-armv6hfb ?= "armv6"
-ARMPKGARCH_tune-armv6thfb ?= "armv6"
-TUNE_FEATURES_tune-armv6b-novfp = "${TUNE_FEATURES_tune-armv6-novfp} bigendian"
+ARMPKGARCH_tune-armv6b        ?= "armv6"
+ARMPKGARCH_tune-armv6tb       ?= "armv6"
+ARMPKGARCH_tune-armv6hfb      ?= "armv6"
+ARMPKGARCH_tune-armv6thfb     ?= "armv6"
+TUNE_FEATURES_tune-armv6b-novfp  = "${TUNE_FEATURES_tune-armv6-novfp}  bigendian"
 TUNE_FEATURES_tune-armv6tb-novfp = "${TUNE_FEATURES_tune-armv6t-novfp} bigendian"
-TUNE_FEATURES_tune-armv6b = "${TUNE_FEATURES_tune-armv6} bigendian"
-TUNE_FEATURES_tune-armv6tb = "${TUNE_FEATURES_tune-armv6t} bigendian"
-TUNE_FEATURES_tune-armv6hfb = "${TUNE_FEATURES_tune-armv6hf} bigendian"
-TUNE_FEATURES_tune-armv6thfb = "${TUNE_FEATURES_tune-armv6thf} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv6b-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb} armv6b"
+TUNE_FEATURES_tune-armv6b =        "${TUNE_FEATURES_tune-armv6}        bigendian"
+TUNE_FEATURES_tune-armv6tb =       "${TUNE_FEATURES_tune-armv6t}       bigendian"
+TUNE_FEATURES_tune-armv6hfb =      "${TUNE_FEATURES_tune-armv6hf}      bigendian"
+TUNE_FEATURES_tune-armv6thfb =     "${TUNE_FEATURES_tune-armv6thf}     bigendian"
+PACKAGE_EXTRA_ARCHS_tune-armv6b-novfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb}  armv6b"
 PACKAGE_EXTRA_ARCHS_tune-armv6tb-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb} armv6b armv6tb"
-PACKAGE_EXTRA_ARCHS_tune-armv6b = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp} armv6b armv6b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6tb = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp} armv6b armv6tb armv6b-vfp armv6tb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6hfb = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp} armv6hfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6thfb = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehfb-vfp} armv6hfb-vfp armv6thfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6b        = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp}  armv6b armv6b-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6tb       = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp} armv6b armv6tb armv6b-vfp armv6tb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6hfb      = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp}  armv6hfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv6thfb     = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehfb-vfp} armv6hfb-vfp armv6thfb-vfp"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 08/15] arch-armv5.inc: drop duplicate ARMPKGSFX_DSP and PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (6 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 07/15] arch-armv[456]*.inc: improve indentation like armv7a Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 09/15] arch-armv7a.inc: Fix PACKAGE_EXTRA_ARCHS for tune-armv7atb-vfpv3, tune-armv7atb-vfpv3d16, cortexa7thf-neon-vfpv4 Martin Jansa
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* both belong and already are in arch-armv5-dsp.inc

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv5.inc | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv5.inc b/meta/conf/machine/include/arm/arch-armv5.inc
index 6a17972..e6ff902 100644
--- a/meta/conf/machine/include/arm/arch-armv5.inc
+++ b/meta/conf/machine/include/arm/arch-armv5.inc
@@ -5,8 +5,6 @@ TUNECONFLICTS[armv5] = "armv4"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv5', ' -march=armv5${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}', '', d)}"
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv5', 'armv5:', '' ,d)}"
 
-ARMPKGSFX_DSP = "${@bb.utils.contains('TUNE_FEATURES', [ 'armv5', 'dsp' ], 'e', '', d)}"
-
 require conf/machine/include/arm/arch-armv4.inc
 require conf/machine/include/arm/feature-arm-vfp.inc
 
@@ -33,7 +31,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv5-vfp     = "${PACKAGE_EXTRA_ARCHS_tune-armv5}  arm
 PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5-vfp armv5t-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp   = "armv5hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp  = "armv5hf-vfp armv5thf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
 
 # Big Endian
 AVAILTUNES += "armv5b armv5tb"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 09/15] arch-armv7a.inc: Fix PACKAGE_EXTRA_ARCHS for tune-armv7atb-vfpv3, tune-armv7atb-vfpv3d16, cortexa7thf-neon-vfpv4
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (7 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 08/15] arch-armv5.inc: drop duplicate ARMPKGSFX_DSP and PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 10/15] arch-armv7a.inc: add vfpv4 support also to softfp and big endiand tunes Martin Jansa
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv7a.inc | 4 ++--
 meta/conf/machine/include/tune-cortexa7.inc   | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
index d0db09c..79ca83e 100644
--- a/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -89,9 +89,9 @@ TUNE_FEATURES_tune-armv7atb-neon       = "${TUNE_FEATURES_tune-armv7at-neon}
 PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7ab-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfp-vfpv3d16 armv7at2b-vfp-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-vfpv3d16 armv7at2b-vfp-vfpv3d16"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
 
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index 0f24183..23f2ff6 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -39,4 +39,4 @@ PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-ar
 PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon cortexa7hf-vfp-vfpv4-neon cortexa7t2hf-vfp-vfpv4-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon cortexa7t2hf-vfp-vfpv4-neon"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 10/15] arch-armv7a.inc: add vfpv4 support also to softfp and big endiand tunes
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (8 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 09/15] arch-armv7a.inc: Fix PACKAGE_EXTRA_ARCHS for tune-armv7atb-vfpv3, tune-armv7atb-vfpv3d16, cortexa7thf-neon-vfpv4 Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 11/15] feature-arm-{neon, vfp}.inc: refactor and fix issues Martin Jansa
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv7a.inc | 28 ++++++++++++++++++++++-----
 1 file changed, 23 insertions(+), 5 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
index 79ca83e..0c6e755 100644
--- a/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -9,7 +9,7 @@ require conf/machine/include/arm/arch-armv6.inc
 require conf/machine/include/arm/feature-arm-neon.inc
 
 # Little Endian base configs
-AVAILTUNES += "armv7a armv7at armv7a-vfpv3d16 armv7at-vfpv3d16 armv7a-vfpv3 armv7at-vfpv3 armv7a-neon armv7at-neon"
+AVAILTUNES += "armv7a armv7at armv7a-vfpv3d16 armv7at-vfpv3d16 armv7a-vfpv3 armv7at-vfpv3 armv7a-neon armv7at-neon armv7a-neon-vfpv4 armv7at-neon-vfpv4"
 ARMPKGARCH_tune-armv7a             ?= "armv7a"
 ARMPKGARCH_tune-armv7at            ?= "armv7a"
 ARMPKGARCH_tune-armv7a-vfpv3d16    ?= "armv7a"
@@ -18,6 +18,8 @@ ARMPKGARCH_tune-armv7a-vfpv3       ?= "armv7a"
 ARMPKGARCH_tune-armv7at-vfpv3      ?= "armv7a"
 ARMPKGARCH_tune-armv7a-neon        ?= "armv7a"
 ARMPKGARCH_tune-armv7at-neon       ?= "armv7a"
+ARMPKGARCH_tune-armv7a-neon-vfpv4  ?= "armv7a"
+ARMPKGARCH_tune-armv7at-neon-vfpv4 ?= "armv7a"
 TUNE_FEATURES_tune-armv7a             = "arm armv7a vfp"
 TUNE_FEATURES_tune-armv7at            = "${TUNE_FEATURES_tune-armv7a} thumb"
 TUNE_FEATURES_tune-armv7a-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a}  vfpv3d16"
@@ -26,6 +28,8 @@ TUNE_FEATURES_tune-armv7a-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3d16}
 TUNE_FEATURES_tune-armv7at-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3d16} vfpv3"
 TUNE_FEATURES_tune-armv7a-neon        = "${TUNE_FEATURES_tune-armv7a}  neon"
 TUNE_FEATURES_tune-armv7at-neon       = "${TUNE_FEATURES_tune-armv7at} neon"
+TUNE_FEATURES_tune-armv7a-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon}  vfpv4"
+TUNE_FEATURES_tune-armv7at-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon} vfpv4"
 PACKAGE_EXTRA_ARCHS_tune-armv7a             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7a armv7a-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7at            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-vfpv3d16"
@@ -34,6 +38,8 @@ PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a
 PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3 armv7at2-vfp-vfpv3d16-vfpv3"
 PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  armv7a-vfp-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-vfp-neon-vfpv4 armv7at2-vfp-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "armv7ahf armv7athf armv7ahf-vfpv3d16 armv7athf-vfpv3d16 armv7ahf-vfpv3 armv7athf-vfpv3 armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
@@ -55,8 +61,8 @@ TUNE_FEATURES_tune-armv7ahf-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3}
 TUNE_FEATURES_tune-armv7athf-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3}      callconvention-hard"
 TUNE_FEATURES_tune-armv7ahf-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        callconvention-hard"
 TUNE_FEATURES_tune-armv7athf-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon}      vfpv4"
-TUNE_FEATURES_tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon}     vfpv4"
+TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  callconvention-hard"
+TUNE_FEATURES_tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} callconvention-hard"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7ahf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-vfpv3d16"
@@ -69,7 +75,7 @@ PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv
 PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-vfp-neon-vfpv4 armv7at2hf-vfp-neon-vfpv4"
 
 # Big Endian
-AVAILTUNES += "armv7ab armv7atb armv7ab-vfpv3d16 armv7atb-vfpv3d16 armv7ab-vfpv3 armv7atb-vfpv3 armv7ab-neon armv7atb-neon"
+AVAILTUNES += "armv7ab armv7atb armv7ab-vfpv3d16 armv7atb-vfpv3d16 armv7ab-vfpv3 armv7atb-vfpv3 armv7ab-neon armv7atb-neon armv7ab-neon-vfpv4 armv7atb-neon-vfpv4"
 ARMPKGARCH_tune-armv7ab             ?= "armv7a"
 ARMPKGARCH_tune-armv7atb            ?= "armv7a"
 ARMPKGARCH_tune-armv7ab-vfpv3d16    ?= "armv7a"
@@ -78,6 +84,8 @@ ARMPKGARCH_tune-armv7ab-vfpv3       ?= "armv7a"
 ARMPKGARCH_tune-armv7atb-vfpv3      ?= "armv7a"
 ARMPKGARCH_tune-armv7ab-neon        ?= "armv7a"
 ARMPKGARCH_tune-armv7atb-neon       ?= "armv7a"
+ARMPKGARCH_tune-armv7ab-neon-vfpv4  ?= "armv7a"
+ARMPKGARCH_tune-armv7atb-neon-vfpv4 ?= "armv7a"
 TUNE_FEATURES_tune-armv7ab             = "${TUNE_FEATURES_tune-armv7a}             bigendian"
 TUNE_FEATURES_tune-armv7atb            = "${TUNE_FEATURES_tune-armv7at}            bigendian"
 TUNE_FEATURES_tune-armv7ab-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a-vfpv3d16}    bigendian"
@@ -86,6 +94,8 @@ TUNE_FEATURES_tune-armv7ab-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3}
 TUNE_FEATURES_tune-armv7atb-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3}      bigendian"
 TUNE_FEATURES_tune-armv7ab-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        bigendian"
 TUNE_FEATURES_tune-armv7atb-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       bigendian"
+TUNE_FEATURES_tune-armv7ab-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  bigendian"
+TUNE_FEATURES_tune-armv7atb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7ab-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-vfpv3d16"
@@ -94,9 +104,11 @@ PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7
 PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon}  armv7ab-vfp-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-vfp-neon-vfpv4 armv7at2b-vfp-neon-vfpv4"
 
 # Big Endian + HF
-AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-neon armv7athfb-neon"
+AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-neon armv7athfb-neon armv7ahfb-neon-vfpv4 armv7athfb-neon-vfpv4"
 ARMPKGARCH_tune-armv7ahfb             ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb            ?= "armv7a"
 ARMPKGARCH_tune-armv7ahfb-vfpv3d16    ?= "armv7a"
@@ -105,6 +117,8 @@ ARMPKGARCH_tune-armv7ahfb-vfpv3       ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb-vfpv3      ?= "armv7a"
 ARMPKGARCH_tune-armv7ahfb-neon        ?= "armv7a"
 ARMPKGARCH_tune-armv7athfb-neon       ?= "armv7a"
+ARMPKGARCH_tune-armv7ahfb-neon-vfpv4  ?= "armv7a"
+ARMPKGARCH_tune-armv7athfb-neon-vfpv4 ?= "armv7a"
 TUNE_FEATURES_tune-armv7ahfb             = "${TUNE_FEATURES_tune-armv7ahf}             bigendian"
 TUNE_FEATURES_tune-armv7athfb            = "${TUNE_FEATURES_tune-armv7athf}            bigendian"
 TUNE_FEATURES_tune-armv7ahfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ahf-vfpv3d16}    bigendian"
@@ -113,6 +127,8 @@ TUNE_FEATURES_tune-armv7ahfb-vfpv3       = "${TUNE_FEATURES_tune-armv7ahf-vfpv3}
 TUNE_FEATURES_tune-armv7athfb-vfpv3      = "${TUNE_FEATURES_tune-armv7athf-vfpv3}      bigendian"
 TUNE_FEATURES_tune-armv7ahfb-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        bigendian"
 TUNE_FEATURES_tune-armv7athfb-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       bigendian"
+TUNE_FEATURES_tune-armv7ahfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  bigendian"
+TUNE_FEATURES_tune-armv7athfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7ahfb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-vfpv3d16"
@@ -121,3 +137,5 @@ PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-arm
 PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfp-vfpv3d16-vfpv3 armv7at2hfb-vfp-vfpv3d16-vfpv3"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-neon"
 PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-neon armv7at2hfb-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon}  armv7ahfb-vfp-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-vfp-neon-vfpv4 armv7at2hfb-vfp-neon-vfpv4"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 11/15] feature-arm-{neon, vfp}.inc: refactor and fix issues
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (9 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 10/15] arch-armv7a.inc: add vfpv4 support also to softfp and big endiand tunes Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 21:14   ` Khem Raj
  2015-12-10 13:48 ` [PATCH][master][RESEND 12/15] feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT Martin Jansa
                   ` (4 subsequent siblings)
  15 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* respect all 4 vfp options ('vfp', 'vfpv3d16', 'vfpv3', 'vfpv4') when
  setting -mfloat-abi and ARMPKGSFX_EABI, without this change it wasn't
  possible to use call-convention hard together with vfpv4
* move 'vfpv3d16', 'vfpv3', 'vfpv4' support from
  feature-arm-vfp.inc
  to
  feature-arm-neon.inc
  the main difference is that feature-arm-vfp.inc is included in
  arch-armv5.inc while feature-arm-neon.inc only in armv7*.inc, so
  these options should be added to TUNEVALID also only for armv7*
  MACHINEs.
* support vfpv4 with or without neon
  when both vfpv4 and neon are in TUNE_FEATURES we want to set only one
  -mfpu parameter and to neon-vfpv4
* prevent multiple appends to ARMPKGSFX_FPU, we don't want to include
  e.g. -vfp as well as -vfpv4 when both "vfp" and "vfpv4" are in
  TUNE_FEATURES
* add -mfpu=vfp for tunes with "vfp" in TUNE_FEATURES - before that we
  were only adding -vfp to ARMPKGSFX_FPU
* add TUNE_CCARGS_MFPU variable which is used to set -mfpu parameter as
  well as ARMPKGSFX_FPU suffix in TUNE_PKGARCH, all enabled values are
  appended to it based on TUNE_FEATURES and then the last one is used
  in the actual param and suffix
* this prevents multiple -mfpu options in TUNE_CCARGS

* !!!
  This means we need to change TUNE_PKGARCH and PACKAGE_EXTRA_ARCHS for
  vfpv4, vfpv3d16, vfpv3 tunes, because the -vfp* isn't prependend
  multiple times. If you're using one of these new DEFAULTTUNES (which
  were at least partially broken anyway) and depend on working binary
  package feed upgrade-path, then don't forget to migrate PR service
  database to new TUNE_PKGARCH.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv7a.inc      | 64 +++++++++++-----------
 meta/conf/machine/include/arm/feature-arm-neon.inc | 19 ++++++-
 meta/conf/machine/include/arm/feature-arm-vfp.inc  | 22 +++-----
 meta/conf/machine/include/tune-cortexa15.inc       |  8 +--
 meta/conf/machine/include/tune-cortexa17.inc       |  8 +--
 meta/conf/machine/include/tune-cortexa5.inc        |  8 +--
 meta/conf/machine/include/tune-cortexa7.inc        | 12 ++--
 meta/conf/machine/include/tune-cortexa8.inc        |  8 +--
 meta/conf/machine/include/tune-cortexa9.inc        |  8 +--
 9 files changed, 84 insertions(+), 73 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
index 0c6e755..1f2e071 100644
--- a/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -32,14 +32,14 @@ TUNE_FEATURES_tune-armv7a-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon}  vfpv
 TUNE_FEATURES_tune-armv7at-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon} vfpv4"
 PACKAGE_EXTRA_ARCHS_tune-armv7a             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7a armv7a-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7at            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-vfpv3d16 armv7at2-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16}  armv7a-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3 armv7at2-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  armv7a-vfp-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-vfp-neon-vfpv4 armv7at2-vfp-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfpv3d16 armv7at2-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16}  armv7a-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfpv3 armv7at2-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-neon armv7at2-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  armv7a-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-neon-vfpv4 armv7at2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "armv7ahf armv7athf armv7ahf-vfpv3d16 armv7athf-vfpv3d16 armv7ahf-vfpv3 armv7athf-vfpv3 armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
@@ -65,14 +65,14 @@ TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv
 TUNE_FEATURES_tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} callconvention-hard"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7ahf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-vfpv3d16 armv7at2hf-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16}  armv7ahf-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfp-vfpv3d16-vfpv3 armv7at2hf-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-neon armv7at2hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  armv7ahf-vfp-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-vfp-neon-vfpv4 armv7at2hf-vfp-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfpv3d16 armv7at2hf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16}  armv7ahf-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfpv3 armv7at2hf-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-neon armv7at2hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  armv7ahf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-neon-vfpv4 armv7at2hf-neon-vfpv4"
 
 # Big Endian
 AVAILTUNES += "armv7ab armv7atb armv7ab-vfpv3d16 armv7atb-vfpv3d16 armv7ab-vfpv3 armv7atb-vfpv3 armv7ab-neon armv7atb-neon armv7ab-neon-vfpv4 armv7atb-neon-vfpv4"
@@ -98,14 +98,14 @@ TUNE_FEATURES_tune-armv7ab-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4
 TUNE_FEATURES_tune-armv7atb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7ab-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-vfpv3d16 armv7at2b-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon}  armv7ab-vfp-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-vfp-neon-vfpv4 armv7at2b-vfp-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfpv3d16 armv7at2b-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfpv3 armv7at2b-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-neon armv7at2b-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon}  armv7ab-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-neon-vfpv4 armv7at2b-neon-vfpv4"
 
 # Big Endian + HF
 AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-neon armv7athfb-neon armv7ahfb-neon-vfpv4 armv7athfb-neon-vfpv4"
@@ -131,11 +131,11 @@ TUNE_FEATURES_tune-armv7ahfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-v
 TUNE_FEATURES_tune-armv7athfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} bigendian"
 PACKAGE_EXTRA_ARCHS_tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7ahfb-vfp"
 PACKAGE_EXTRA_ARCHS_tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-vfpv3d16 armv7at2hfb-vfp-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16}  armv7ahfb-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfp-vfpv3d16-vfpv3 armv7at2hfb-vfp-vfpv3d16-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-neon armv7at2hfb-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon}  armv7ahfb-vfp-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-vfp-neon-vfpv4 armv7at2hfb-vfp-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfpv3d16 armv7at2hfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16}  armv7ahfb-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfpv3 armv7at2hfb-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-neon armv7at2hfb-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon}  armv7ahfb-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-neon-vfpv4 armv7at2hfb-neon-vfpv4"
diff --git a/meta/conf/machine/include/arm/feature-arm-neon.inc b/meta/conf/machine/include/arm/feature-arm-neon.inc
index e9351f9..50d9175 100644
--- a/meta/conf/machine/include/arm/feature-arm-neon.inc
+++ b/meta/conf/machine/include/arm/feature-arm-neon.inc
@@ -1,3 +1,18 @@
+# GCC supports following options:
+# 'vfp', 'vfpv3', 'vfpv3-fp16', 'vfpv3-d16', 'vfpv3-d16-fp16', 'vfpv3xd', 'vfpv3xd-fp16', 'neon', 'neon-fp16', 'vfpv4', 'vfpv4-d16', 'fpv4-sp-d16', 'neon-vfpv4', 'fpv5-d16', 'fpv5-sp-d16', 'fp-armv8', 'neon-fp-armv8', and 'crypto-neon-fp-armv8'
+
+# Only some combinations are supported here.
+# 'vfp', -mfloat-abi parameter and 'hf' suffix is implemented in feature-arm-vfp.inc
+
 TUNEVALID[neon] = "Enable Neon SIMD accelerator unit."
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', bb.utils.contains('TUNE_FEATURES', 'vfpv4', ' -mfpu=neon-vfpv4', ' -mfpu=neon', d), '' , d)}"
-ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', '-neon', '', d)}"
+TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', ' neon', '', d)}"
+
+TUNEVALID[vfpv3d16] = "Enable Vector Floating Point Version 3 with 16 registers (vfpv3-d16) unit."
+TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', ' vfpv3d16', '', d)}"
+
+TUNEVALID[vfpv3] = "Enable Vector Floating Point Version 3 with 32 registers (vfpv3) unit."
+TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', ' vfpv3', '' , d)}"
+
+TUNEVALID[vfpv4] = "Enable Vector Floating Point Version 4 (vfpv4) unit."
+TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv4', ' vfpv4', '', d)}"
+TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', [ 'vfpv4', 'neon' ], ' neon-vfpv4', '', d)}"
diff --git a/meta/conf/machine/include/arm/feature-arm-vfp.inc b/meta/conf/machine/include/arm/feature-arm-vfp.inc
index e23d377..1b39488 100644
--- a/meta/conf/machine/include/arm/feature-arm-vfp.inc
+++ b/meta/conf/machine/include/arm/feature-arm-vfp.inc
@@ -1,17 +1,13 @@
-TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
-ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfp', '-vfp', '' ,d)}"
-
-TUNEVALID[vfpv3d16] = "Enable Vector Floating Point Version 3 with 16 registers (vfpv3-d16) unit."
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', ' -mfpu=vfpv3-d16', '', d)}"
-ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '-vfpv3d16', '' ,d)}"
+# This is only for VFPv1 or VFPv2, other vfp* tunes are defined in
+# feature-arm-neon.inc, because they are available only for armv7*
+# and this .inc file is included from armv5
 
-TUNEVALID[vfpv3] = "Enable Vector Floating Point Version 3 with 32 registers (vfpv3) unit."
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', ' -mfpu=vfpv3', '', d)}"
-ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', '-vfpv3', '' ,d)}"
+TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
+TUNE_CCARGS_MFPU .= "${@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)}"
+TUNE_CCARGS  .= "${@ (' -mfpu=%s ' % d.getVar('TUNE_CCARGS_MFPU', True).split()[-1]) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else ''}"
+ARMPKGSFX_FPU = "${@ ('-%s'        % d.getVar('TUNE_CCARGS_MFPU', True).split()[-1]) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else ''}"
 
 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('TUNE_FEATURES', 'callconvention-hard', ' -mfloat-abi=hard', ' -mfloat-abi=softfp', d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
+ARMPKGSFX_EABI = "${@ bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hf',                '',                    d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
index b4a693d..7e597f3 100644
--- a/meta/conf/machine/include/tune-cortexa15.inc
+++ b/meta/conf/machine/include/tune-cortexa15.inc
@@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
 TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-vfp-neon cortexa15t2-vfp cortexa15t2-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon"
@@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon
 TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon cortexa15t2hf-vfp cortexa15t2hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
index 69232d0..5cc4567 100644
--- a/meta/conf/machine/include/tune-cortexa17.inc
+++ b/meta/conf/machine/include/tune-cortexa17.inc
@@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa17-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
 TUNE_FEATURES_tune-cortexa17t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa17"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa17-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa17-vfp cortexa17t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-vfp-neon cortexa17t2-vfp cortexa17t2-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-neon cortexa17t2-vfp cortexa17t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon"
@@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa17hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon
 TUNE_FEATURES_tune-cortexa17thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa17"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa17hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa17hf-vfp cortexa17t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-vfp-neon cortexa17t2hf-vfp cortexa17t2hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-neon cortexa17t2hf-vfp cortexa17t2hf-neon"
diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
index b649641..0d82854 100644
--- a/meta/conf/machine/include/tune-cortexa5.inc
+++ b/meta/conf/machine/include/tune-cortexa5.inc
@@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa5-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
 TUNE_FEATURES_tune-cortexa5t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa5"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa5-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa5-vfp cortexa5t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa5-vfp cortexa5-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-vfp-neon cortexa5t2-vfp cortexa5t2-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa5-vfp cortexa5-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-neon cortexa5t2-vfp cortexa5t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa5hf cortexa5thf cortexa5hf-neon cortexa5thf-neon"
@@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa5hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
 TUNE_FEATURES_tune-cortexa5thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa5"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa5hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa5thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-vfp-neon cortexa5t2hf-vfp cortexa5t2hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-neon cortexa5t2hf-vfp cortexa5t2hf-neon"
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index 23f2ff6..133ce38 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
 TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-vfp-neon cortexa7t2-vfp cortexa7t2-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
@@ -36,7 +36,7 @@ TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-
 TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon cortexa7t2hf-vfp-vfpv4-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
index 71706e4..1daaf83 100644
--- a/meta/conf/machine/include/tune-cortexa8.inc
+++ b/meta/conf/machine/include/tune-cortexa8.inc
@@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa8-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
 TUNE_FEATURES_tune-cortexa8t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa8"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa8-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa8-vfp cortexa8-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-vfp-neon cortexa8t2-vfp cortexa8t2-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa8-vfp cortexa8-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-neon cortexa8t2-vfp cortexa8t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon cortexa8thf-neon"
@@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa8hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
 TUNE_FEATURES_tune-cortexa8thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa8"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa8hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa8thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon cortexa8t2hf-vfp cortexa8t2hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-neon cortexa8t2hf-vfp cortexa8t2hf-neon"
diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
index ddd6f77..29e6651 100644
--- a/meta/conf/machine/include/tune-cortexa9.inc
+++ b/meta/conf/machine/include/tune-cortexa9.inc
@@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa9-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
 TUNE_FEATURES_tune-cortexa9t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa9"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa9-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa9-vfp cortexa9-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-vfp-neon cortexa9t2-vfp cortexa9t2-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa9-vfp cortexa9-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-neon cortexa9t2-vfp cortexa9t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
@@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa9hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
 TUNE_FEATURES_tune-cortexa9thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa9"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa9hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-vfp-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon cortexa9t2hf-vfp cortexa9t2hf-vfp-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-neon cortexa9t2hf-vfp cortexa9t2hf-neon"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 12/15] feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (10 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 11/15] feature-arm-{neon, vfp}.inc: refactor and fix issues Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 13/15] cortexa{7, 15, 17}: add VFPv4 tunes Martin Jansa
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* add TUNE_CCARGS_MFLOAT variable which is used to set -mfloat-abi
  parameter as well as ARMPKGSFX_EABI suffix in TUNE_PKGARCH and
  TARGET_FPU
* TARGET_FPU was using ARMPKGSFX_FPU, but in most cases we use it
  only to distinguish between hard and soft abi, not various -mfpu
  variants which can appear in ARMPKGSFX_FPU

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-arm.inc        | 3 +--
 meta/conf/machine/include/arm/arch-arm64.inc      | 2 +-
 meta/conf/machine/include/arm/feature-arm-vfp.inc | 5 +++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/meta/conf/machine/include/arm/arch-arm.inc b/meta/conf/machine/include/arm/arch-arm.inc
index 129fbfb..2e3127c 100644
--- a/meta/conf/machine/include/arm/arch-arm.inc
+++ b/meta/conf/machine/include/arm/arch-arm.inc
@@ -13,5 +13,4 @@ TUNE_PKGARCH = "${ARMPKGARCH}${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}
 
 ABIEXTENSION = "eabi"
 
-TARGET_FPU = "${@d.getVar('ARMPKGSFX_FPU', True).strip('-') or 'soft'}"
-
+TARGET_FPU = "${@d.getVar('TUNE_CCARGS_MFLOAT', True) or 'soft'}"
diff --git a/meta/conf/machine/include/arm/arch-arm64.inc b/meta/conf/machine/include/arm/arch-arm64.inc
index e098e7a..9440698 100644
--- a/meta/conf/machine/include/arm/arch-arm64.inc
+++ b/meta/conf/machine/include/arm/arch-arm64.inc
@@ -28,7 +28,7 @@ TARGET_FPU_64 = ""
 TUNE_ARCH_32 = "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', 'armeb', 'arm', d)}"
 TUNE_PKGARCH_32 = "${ARMPKGARCH}${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}"
 ABIEXTENSION_32 = "eabi"
-TARGET_FPU_32 = "${@d.getVar('ARMPKGSFX_FPU', True).strip('-') or 'soft'}"
+TARGET_FPU_32 = "${@d.getVar('TUNE_CCARGS_MFLOAT', True) or 'soft'}"
 
 TUNE_ARCH = "${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '${TUNE_ARCH_64}', '${TUNE_ARCH_32}' ,d)}"
 TUNE_PKGARCH = "${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '${TUNE_PKGARCH_64}', '${TUNE_PKGARCH_32}' ,d)}"
diff --git a/meta/conf/machine/include/arm/feature-arm-vfp.inc b/meta/conf/machine/include/arm/feature-arm-vfp.inc
index 1b39488..4247255 100644
--- a/meta/conf/machine/include/arm/feature-arm-vfp.inc
+++ b/meta/conf/machine/include/arm/feature-arm-vfp.inc
@@ -9,5 +9,6 @@ TUNE_CCARGS  .= "${@ (' -mfpu=%s ' % d.getVar('TUNE_CCARGS_MFPU', True).split()[
 ARMPKGSFX_FPU = "${@ ('-%s'        % d.getVar('TUNE_CCARGS_MFPU', True).split()[-1]) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else ''}"
 
 TUNEVALID[callconvention-hard] = "Enable EABI hard float call convention, requires VFP."
-TUNE_CCARGS   .= "${@ bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', ' -mfloat-abi=hard', ' -mfloat-abi=softfp', d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
-ARMPKGSFX_EABI = "${@ bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hf',                '',                    d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
+TUNE_CCARGS_MFLOAT = "${@ bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hard', 'softfp', d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
+TUNE_CCARGS   .= "${@ ' -mfloat-abi=${TUNE_CCARGS_MFLOAT}' if (d.getVar('TUNE_CCARGS_MFLOAT', True) != '')     else ''}"
+ARMPKGSFX_EABI = "${@ 'hf'                                 if (d.getVar('TUNE_CCARGS_MFLOAT', True) == 'hard') else ''}"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 13/15] cortexa{7, 15, 17}: add VFPv4 tunes
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (11 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 12/15] feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-10 13:48 ` [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15 Martin Jansa
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* it was added only to hf cortexa7 in:
  commit e97d152ca13556b41a236c1a4cfb11e77ff857d7
  Author: Kristof Robot <krirobo@gmail.com>
  Date:   Sun Jan 26 10:03:56 2014 +0100

      Add Cortex A7 support for NEONv2 & FPv4

* add it to softfp cortexa7 and both versions for cortexa15 and
  cortexa17 tunes

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/tune-cortexa15.inc | 16 ++++++++++++++--
 meta/conf/machine/include/tune-cortexa17.inc | 16 ++++++++++++++--
 meta/conf/machine/include/tune-cortexa7.inc  |  8 +++++++-
 3 files changed, 35 insertions(+), 5 deletions(-)

diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
index 7e597f3..8b34bb2 100644
--- a/meta/conf/machine/include/tune-cortexa15.inc
+++ b/meta/conf/machine/include/tune-cortexa15.inc
@@ -6,31 +6,43 @@ TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor optimizations"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mtune=cortex-a15', '', d)}"
 
 # Little Endian base configs
-AVAILTUNES += "cortexa15 cortexa15t cortexa15-neon cortexa15t-neon"
+AVAILTUNES += "cortexa15 cortexa15t cortexa15-neon cortexa15t-neon cortexa15-neon-vfpv4 cortexa15t-neon-vfpv4"
 ARMPKGARCH_tune-cortexa15             = "cortexa15"
 ARMPKGARCH_tune-cortexa15t            = "cortexa15"
 ARMPKGARCH_tune-cortexa15-neon        = "cortexa15"
 ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
+ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
+ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
 TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7a}             cortexa15"
 TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7at}            cortexa15"
 TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
 TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
+TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
+TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
 
 # HF Tunes
-AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon"
+AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
 ARMPKGARCH_tune-cortexa15hf             = "cortexa15"
 ARMPKGARCH_tune-cortexa15thf            = "cortexa15"
 ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
 ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
+ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
+ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
 TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
 TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
 TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
 TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
+TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
+TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
index 5cc4567..9668e95 100644
--- a/meta/conf/machine/include/tune-cortexa17.inc
+++ b/meta/conf/machine/include/tune-cortexa17.inc
@@ -6,31 +6,43 @@ TUNEVALID[cortexa17] = "Enable Cortex-A17 specific processor optimizations"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa17', ' -mtune=cortex-a17', '', d)}"
 
 # Little Endian base configs
-AVAILTUNES += "cortexa17 cortexa17t cortexa17-neon cortexa17t-neon"
+AVAILTUNES += "cortexa17 cortexa17t cortexa17-neon cortexa17t-neon cortexa17-neon-vfpv4 cortexa17t-neon-vfpv4"
 ARMPKGARCH_tune-cortexa17             = "cortexa17"
 ARMPKGARCH_tune-cortexa17t            = "cortexa17"
 ARMPKGARCH_tune-cortexa17-neon        = "cortexa17"
 ARMPKGARCH_tune-cortexa17t-neon       = "cortexa17"
+ARMPKGARCH_tune-cortexa17-neon-vfpv4  = "cortexa17"
+ARMPKGARCH_tune-cortexa17t-neon-vfpv4 = "cortexa17"
 TUNE_FEATURES_tune-cortexa17             = "${TUNE_FEATURES_tune-armv7a}             cortexa17"
 TUNE_FEATURES_tune-cortexa17t            = "${TUNE_FEATURES_tune-armv7at}            cortexa17"
 TUNE_FEATURES_tune-cortexa17-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa17"
 TUNE_FEATURES_tune-cortexa17t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa17"
+TUNE_FEATURES_tune-cortexa17-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa17"
+TUNE_FEATURES_tune-cortexa17t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa17"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa17-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa17-vfp cortexa17t2-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-neon cortexa17t2-vfp cortexa17t2-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa17-vfp cortexa17-neon cortexa17-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa17-vfp cortexa17-neon cortexa17-neon-vfpv4 cortexa17t2-vfp cortexa17t2-neon cortexa17t2-neon-vfpv4"
 
 # HF Tunes
-AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon"
+AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon cortexa17hf-neon-vfpv4 cortexa17thf-neon-vfpv4"
 ARMPKGARCH_tune-cortexa17hf             = "cortexa17"
 ARMPKGARCH_tune-cortexa17thf            = "cortexa17"
 ARMPKGARCH_tune-cortexa17hf-neon        = "cortexa17"
 ARMPKGARCH_tune-cortexa17thf-neon       = "cortexa17"
+ARMPKGARCH_tune-cortexa17hf-neon-vfpv4  = "cortexa17"
+ARMPKGARCH_tune-cortexa17thf-neon-vfpv4 = "cortexa17"
 TUNE_FEATURES_tune-cortexa17hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa17"
 TUNE_FEATURES_tune-cortexa17thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa17"
 TUNE_FEATURES_tune-cortexa17hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa17"
 TUNE_FEATURES_tune-cortexa17thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa17"
+TUNE_FEATURES_tune-cortexa17hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa17"
+TUNE_FEATURES_tune-cortexa17thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa17"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa17hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa17hf-vfp cortexa17t2hf-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-neon cortexa17t2hf-vfp cortexa17t2hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa17hf-vfp cortexa17hf-neon cortexa17hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa17hf-vfp cortexa17hf-neon cortexa17hf-neon-vfpv4 cortexa17t2hf-vfp cortexa17t2hf-neon cortexa17t2hf-neon-vfpv4"
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index 133ce38..4fea36f 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -6,19 +6,25 @@ TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor optimizations"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mtune=cortex-a7', '', d)}"
 
 # Little Endian base configs
-AVAILTUNES += "cortexa7 cortexa7t cortexa7-neon cortexa7t-neon"
+AVAILTUNES += "cortexa7 cortexa7t cortexa7-neon cortexa7t-neon cortexa7-neon-vfpv4 cortexa7t-neon-vfpv4"
 ARMPKGARCH_tune-cortexa7             = "cortexa7"
 ARMPKGARCH_tune-cortexa7t            = "cortexa7"
 ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
 ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
+ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
+ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
 TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7a}             cortexa7"
 TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7at}            cortexa7"
 TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
 TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
+TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
+TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
 PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (12 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 13/15] cortexa{7, 15, 17}: add VFPv4 tunes Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-18  3:13   ` Andre McCurdy
  2015-12-10 13:48 ` [PATCH][master][RESEND 15/15] tune-*: use mcpu instead of mtune for ARM tunes Martin Jansa
  2015-12-23 10:10 ` [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
  15 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* be aware that this -march value is available only in gcc-4.9 and
  newer:
  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
* -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
  We either have to stop putting -march in default CCARGS or at
  least set it compatible one like this patch does.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/arm/arch-armv7ve.inc     | 141 +++++++++++++++++++++
 .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
 meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
 meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
 4 files changed, 194 insertions(+), 52 deletions(-)
 create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc

diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc b/meta/conf/machine/include/arm/arch-armv7ve.inc
new file mode 100644
index 0000000..79e1ef6
--- /dev/null
+++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
@@ -0,0 +1,141 @@
+DEFAULTTUNE ?= "armv7ve"
+
+TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
+TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', ' -march=armv7ve', '', d)}"
+MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 'armv7ve:', '' ,d)}"
+
+require conf/machine/include/arm/arch-armv6.inc
+require conf/machine/include/arm/feature-arm-neon.inc
+
+# Little Endian base configs
+AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16 armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon armv7ve-neon-vfpv4 armv7vet-neon-vfpv4"
+ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
+ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
+ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
+ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
+ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
+ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
+ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
+TUNE_FEATURES_tune-armv7vet            = "${TUNE_FEATURES_tune-armv7ve} thumb"
+TUNE_FEATURES_tune-armv7ve-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
+TUNE_FEATURES_tune-armv7vet-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
+TUNE_FEATURES_tune-armv7ve-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
+TUNE_FEATURES_tune-armv7vet-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
+TUNE_FEATURES_tune-armv7ve-neon        = "${TUNE_FEATURES_tune-armv7ve}  neon"
+TUNE_FEATURES_tune-armv7vet-neon       = "${TUNE_FEATURES_tune-armv7vet} neon"
+TUNE_FEATURES_tune-armv7ve-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
+TUNE_FEATURES_tune-armv7vet-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7ve             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7vet            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp armv7vet2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3 armv7vet2-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4 armv7vet2-neon-vfpv4"
+
+# HF Tunes
+AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16 armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-neon armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
+ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES_tune-armv7vehf             = "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
+TUNE_FEATURES_tune-armv7vethf            = "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
+TUNE_FEATURES_tune-armv7vehf-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
+TUNE_FEATURES_tune-armv7vethf-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
+TUNE_FEATURES_tune-armv7vehf-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
+TUNE_FEATURES_tune-armv7vethf-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
+TUNE_FEATURES_tune-armv7vehf-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
+TUNE_FEATURES_tune-armv7vethf-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
+TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
+TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp armv7vet2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16 armv7vet2hf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3 armv7vet2hf-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4 armv7vet2hf-neon-vfpv4"
+
+# Big Endian
+AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16 armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
+ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
+ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
+ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
+ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
+ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
+ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
+ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES_tune-armv7veb             = "${TUNE_FEATURES_tune-armv7ve}             bigendian"
+TUNE_FEATURES_tune-armv7vetb            = "${TUNE_FEATURES_tune-armv7vet}            bigendian"
+TUNE_FEATURES_tune-armv7veb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
+TUNE_FEATURES_tune-armv7vetb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
+TUNE_FEATURES_tune-armv7veb-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
+TUNE_FEATURES_tune-armv7vetb-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
+TUNE_FEATURES_tune-armv7veb-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
+TUNE_FEATURES_tune-armv7vetb-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
+TUNE_FEATURES_tune-armv7veb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
+TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
+PACKAGE_EXTRA_ARCHS_tune-armv7veb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7vetb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16 armv7vet2b-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3 armv7vet2b-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4 armv7vet2b-neon-vfpv4"
+
+# Big Endian + HF
+AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16 armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3 armv7vehfb-neon armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
+ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
+ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES_tune-armv7vehfb             = "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
+TUNE_FEATURES_tune-armv7vethfb            = "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
+TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
+TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
+TUNE_FEATURES_tune-armv7vehfb-vfpv3       = "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
+TUNE_FEATURES_tune-armv7vethfb-vfpv3      = "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
+TUNE_FEATURES_tune-armv7vehfb-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
+TUNE_FEATURES_tune-armv7vethfb-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
+TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
+TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp armv7vet2hfb-vfp"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16 armv7vet2hfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}  armv7vehfb-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3 armv7vet2hfb-vfpv3"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
+PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}  armv7vehfb-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4 armv7vet2hfb-neon-vfpv4"
diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc b/meta/conf/machine/include/arm/feature-arm-thumb.inc
index 5632171..54c0cee 100644
--- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
+++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
@@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
 ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7a', 't2', '', d)}"
 ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r', 't2', '', d)}"
 ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7m', 't2', '', d)}"
+ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 't2', '', d)}"
 
 # If the device supports ARM, then respect ARM_THUMB_OPT (which can be "arm" or "thumb")
 # If the defice doesn't support ARM, then always set "thumb" even when
diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
index 8b34bb2..cfc8151 100644
--- a/meta/conf/machine/include/tune-cortexa15.inc
+++ b/meta/conf/machine/include/tune-cortexa15.inc
@@ -1,6 +1,6 @@
-DEFAULTTUNE ?= "armv7a-neon"
+DEFAULTTUNE ?= "armv7ve-neon"
 
-require conf/machine/include/arm/arch-armv7a.inc
+require conf/machine/include/arm/arch-armv7ve.inc
 
 TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor optimizations"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mtune=cortex-a15', '', d)}"
@@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        = "cortexa15"
 ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
 ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
 ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
-TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7a}             cortexa15"
-TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7at}            cortexa15"
-TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
-TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
-TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
-TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
+TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
+TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
+TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
+TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
+TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
+TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp cortexa15-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
@@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
 ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
 ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
 ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
-TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
-TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
-TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
-TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
-TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
-TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
+TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
+TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
+TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
+TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
+TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
+TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp cortexa15hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index 4fea36f..84432bd 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -1,6 +1,6 @@
-DEFAULTTUNE ?= "armv7a-neon"
+DEFAULTTUNE ?= "armv7ve-neon"
 
-require conf/machine/include/arm/arch-armv7a.inc
+require conf/machine/include/arm/arch-armv7ve.inc
 
 TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor optimizations"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mtune=cortex-a7', '', d)}"
@@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
 ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
 ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
 ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
-TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7a}             cortexa7"
-TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7at}            cortexa7"
-TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
-TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
-TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
-TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
+TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
+TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
+TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
+TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
+TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
+TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp cortexa7-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
@@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        = "cortexa7"
 ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
 ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
 ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
-TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
-TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
-TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
-TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
-TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
-TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
+TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
+TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
+TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
+TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
+TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
+TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp cortexa7hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCH][master][RESEND 15/15] tune-*: use mcpu instead of mtune for ARM tunes
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (13 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15 Martin Jansa
@ 2015-12-10 13:48 ` Martin Jansa
  2015-12-23 10:10 ` [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
  15 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-10 13:48 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

* since:
  commit cffda9a821a3b83a8529d643c567859e091c6846
  Author: Martin Jansa <Martin.Jansa@gmail.com>
  Date:   Tue Sep 11 17:05:45 2012 +0000

      arch-arm: define different ARMPKGARCH when different CCARGS are used
  we don't need to worry about e.g. cortexa7 device upgrading
  binary package from armv7a feed which would be built with
  -mcpu=cortexa15, so we can use -mcpu instead of -mtune, because
  we won't share the binary feed with MACHINEs built with different
  tune.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/conf/machine/include/tune-arm1136jf-s.inc   | 2 +-
 meta/conf/machine/include/tune-arm920t.inc       | 2 +-
 meta/conf/machine/include/tune-arm926ejs.inc     | 2 +-
 meta/conf/machine/include/tune-arm9tdmi.inc      | 2 +-
 meta/conf/machine/include/tune-cortexa15.inc     | 2 +-
 meta/conf/machine/include/tune-cortexa17.inc     | 2 +-
 meta/conf/machine/include/tune-cortexa5.inc      | 2 +-
 meta/conf/machine/include/tune-cortexa7.inc      | 2 +-
 meta/conf/machine/include/tune-cortexa8.inc      | 2 +-
 meta/conf/machine/include/tune-cortexa9.inc      | 2 +-
 meta/conf/machine/include/tune-cortexm1.inc      | 2 +-
 meta/conf/machine/include/tune-cortexm3.inc      | 2 +-
 meta/conf/machine/include/tune-cortexr4.inc      | 2 +-
 meta/conf/machine/include/tune-ep9312.inc        | 2 +-
 meta/conf/machine/include/tune-iwmmxt.inc        | 2 +-
 meta/conf/machine/include/tune-strongarm1100.inc | 2 +-
 meta/conf/machine/include/tune-xscale.inc        | 2 +-
 17 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/meta/conf/machine/include/tune-arm1136jf-s.inc b/meta/conf/machine/include/tune-arm1136jf-s.inc
index b750fe9..53994ef 100644
--- a/meta/conf/machine/include/tune-arm1136jf-s.inc
+++ b/meta/conf/machine/include/tune-arm1136jf-s.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv6"
 require conf/machine/include/arm/arch-armv6.inc
 
 TUNEVALID[arm1136jfs] = "Enable arm1136jfs specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm1136jfs', ' -mtune=arm1136jf-s', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm1136jfs', ' -mcpu=arm1136jf-s', '', d)}"
 
 AVAILTUNES += "arm1136jfs"
 ARMPKGARCH_tune-arm1136jfs = "arm1136jfs"
diff --git a/meta/conf/machine/include/tune-arm920t.inc b/meta/conf/machine/include/tune-arm920t.inc
index 5e6d4cb..c6e74b6 100644
--- a/meta/conf/machine/include/tune-arm920t.inc
+++ b/meta/conf/machine/include/tune-arm920t.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv4t"
 require conf/machine/include/arm/arch-armv4.inc
 
 TUNEVALID[arm920t] = "Enable arm920t specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm920t', ' -mtune=arm920t', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm920t', ' -mcpu=arm920t', '', d)}"
 
 AVAILTUNES += "arm920t"
 ARMPKGARCH_tune-arm920t = "arm920t"
diff --git a/meta/conf/machine/include/tune-arm926ejs.inc b/meta/conf/machine/include/tune-arm926ejs.inc
index e554941..4f4d7dc 100644
--- a/meta/conf/machine/include/tune-arm926ejs.inc
+++ b/meta/conf/machine/include/tune-arm926ejs.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv5te"
 require conf/machine/include/arm/arch-armv5-dsp.inc
 
 TUNEVALID[arm926ejs] = "Enable arm926ejs specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm926ejs', ' -mtune=arm926ej-s', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm926ejs', ' -mcpu=arm926ej-s', '', d)}"
 
 AVAILTUNES += "arm926ejs"
 ARMPKGARCH_tune-arm926ejs = "arm926ejs"
diff --git a/meta/conf/machine/include/tune-arm9tdmi.inc b/meta/conf/machine/include/tune-arm9tdmi.inc
index ebac472..e9c2b8f 100644
--- a/meta/conf/machine/include/tune-arm9tdmi.inc
+++ b/meta/conf/machine/include/tune-arm9tdmi.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv4t"
 require conf/machine/include/arm/arch-armv4.inc
 
 TUNEVALID[arm9tdmi] = "Enable arm9tdmi specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm9tdmi', ' -mtune=arm9tdmi', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'arm9tdmi', ' -mcpu=arm9tdmi', '', d)}"
 
 AVAILTUNES += "arm9tdmi"
 ARMPKGARCH_tune-arm9tdmi = "arm9tdmi"
diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
index cfc8151..a33b27f 100644
--- a/meta/conf/machine/include/tune-cortexa15.inc
+++ b/meta/conf/machine/include/tune-cortexa15.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv7ve-neon"
 require conf/machine/include/arm/arch-armv7ve.inc
 
 TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mtune=cortex-a15', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mcpu=cortex-a15', '', d)}"
 
 # Little Endian base configs
 AVAILTUNES += "cortexa15 cortexa15t cortexa15-neon cortexa15t-neon cortexa15-neon-vfpv4 cortexa15t-neon-vfpv4"
diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
index 9668e95..ad92e0d 100644
--- a/meta/conf/machine/include/tune-cortexa17.inc
+++ b/meta/conf/machine/include/tune-cortexa17.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv7a-neon"
 require conf/machine/include/arm/arch-armv7a.inc
 
 TUNEVALID[cortexa17] = "Enable Cortex-A17 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa17', ' -mtune=cortex-a17', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa17', ' -mcpu=cortex-a17', '', d)}"
 
 # Little Endian base configs
 AVAILTUNES += "cortexa17 cortexa17t cortexa17-neon cortexa17t-neon cortexa17-neon-vfpv4 cortexa17t-neon-vfpv4"
diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
index 0d82854..c7e5ab9 100644
--- a/meta/conf/machine/include/tune-cortexa5.inc
+++ b/meta/conf/machine/include/tune-cortexa5.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv7a-neon"
 require conf/machine/include/arm/arch-armv7a.inc
 
 TUNEVALID[cortexa5] = "Enable Cortex-A5 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa5', ' -mtune=cortex-a5', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa5', ' -mcpu=cortex-a5', '', d)}"
 
 # Little Endian base configs
 AVAILTUNES += "cortexa5 cortexa5t cortexa5-neon cortexa5t-neon"
diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
index 84432bd..10b6ea7 100644
--- a/meta/conf/machine/include/tune-cortexa7.inc
+++ b/meta/conf/machine/include/tune-cortexa7.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv7ve-neon"
 require conf/machine/include/arm/arch-armv7ve.inc
 
 TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mtune=cortex-a7', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mcpu=cortex-a7', '', d)}"
 
 # Little Endian base configs
 AVAILTUNES += "cortexa7 cortexa7t cortexa7-neon cortexa7t-neon cortexa7-neon-vfpv4 cortexa7t-neon-vfpv4"
diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
index 1daaf83..c8ce021 100644
--- a/meta/conf/machine/include/tune-cortexa8.inc
+++ b/meta/conf/machine/include/tune-cortexa8.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv7a-neon"
 require conf/machine/include/arm/arch-armv7a.inc
 
 TUNEVALID[cortexa8] = "Enable Cortex-A8 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa8', ' -mtune=cortex-a8', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa8', ' -mcpu=cortex-a8', '', d)}"
 
 # Little Endian base configs
 AVAILTUNES += "cortexa8 cortexa8t cortexa8-neon cortexa8t-neon"
diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
index 29e6651..965f2d9 100644
--- a/meta/conf/machine/include/tune-cortexa9.inc
+++ b/meta/conf/machine/include/tune-cortexa9.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv7a-neon"
 require conf/machine/include/arm/arch-armv7a.inc
 
 TUNEVALID[cortexa9] = "Enable Cortex-A9 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa9', ' -mtune=cortex-a9', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa9', ' -mcpu=cortex-a9', '', d)}"
 
 # Little Endian base configs
 AVAILTUNES += "cortexa9 cortexa9t cortexa9-neon cortexa9t-neon"
diff --git a/meta/conf/machine/include/tune-cortexm1.inc b/meta/conf/machine/include/tune-cortexm1.inc
index 794152a..8d882d4 100644
--- a/meta/conf/machine/include/tune-cortexm1.inc
+++ b/meta/conf/machine/include/tune-cortexm1.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv7a"
 require conf/machine/include/arm/arch-armv7a.inc
 
 TUNEVALID[cortexm1] = "Enable Cortex-M1 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexm1', ' -mtune=cortex-m1', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexm1', ' -mcpu=cortex-m1', '', d)}"
 
 AVAILTUNES += "cortexm1"
 ARMPKGARCH_tune-cortexm1 = "cortexm1"
diff --git a/meta/conf/machine/include/tune-cortexm3.inc b/meta/conf/machine/include/tune-cortexm3.inc
index bf7f89e..bf6efcd 100644
--- a/meta/conf/machine/include/tune-cortexm3.inc
+++ b/meta/conf/machine/include/tune-cortexm3.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "cortexm3"
 require conf/machine/include/arm/arch-armv7a.inc
 
 TUNEVALID[cortexm3] = "Enable Cortex-M3 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexm3', ' -mtune=cortex-m3', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexm3', ' -mcpu=cortex-m3', '', d)}"
 
 TUNEVALID[armv7m] = "Enable Cortex-M3 specific processor optimizations"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7m', ' -march=armv7-m', '', d)}"
diff --git a/meta/conf/machine/include/tune-cortexr4.inc b/meta/conf/machine/include/tune-cortexr4.inc
index 177d2d5..7349b0f 100644
--- a/meta/conf/machine/include/tune-cortexr4.inc
+++ b/meta/conf/machine/include/tune-cortexr4.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "cortexr4"
 require conf/machine/include/arm/arch-armv7a.inc
 
 TUNEVALID[cortexr4] = "Enable Cortex-R4 specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexr4', ' -mtune=cortex-r4', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexr4', ' -mcpu=cortex-r4', '', d)}"
 
 TUNEVALID[armv7r] = "Enable Cortex-R4 specific processor optimizations"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r', ' -march=armv7-r', '', d)}"
diff --git a/meta/conf/machine/include/tune-ep9312.inc b/meta/conf/machine/include/tune-ep9312.inc
index 897b904..84ca528 100644
--- a/meta/conf/machine/include/tune-ep9312.inc
+++ b/meta/conf/machine/include/tune-ep9312.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "ep9312"
 require conf/machine/include/arm/arch-armv4.inc
 
 TUNEVALID[ep9312] = "Enable Intel PXA27x specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ep9312', ' -march=ep9312 -mtune=ep9312', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ep9312', ' -march=ep9312 -mcpu=ep9312', '', d)}"
 
 AVAILTUNES += "ep9312"
 ARMPKGARCH_tune-ep9312 = "ep9312"
diff --git a/meta/conf/machine/include/tune-iwmmxt.inc b/meta/conf/machine/include/tune-iwmmxt.inc
index 15cce8d..f27423c 100644
--- a/meta/conf/machine/include/tune-iwmmxt.inc
+++ b/meta/conf/machine/include/tune-iwmmxt.inc
@@ -6,7 +6,7 @@ DEFAULTTUNE ?= "iwmmxt"
 require conf/machine/include/arm/arch-armv5-dsp.inc
 
 TUNEVALID[iwmmxt] = "Enable Intel PXA27x specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'iwmmxt', ' -march=iwmmxt -mtune=iwmmxt', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'iwmmxt', ' -march=iwmmxt -mcpu=iwmmxt', '', d)}"
 
 AVAILTUNES += "iwmmxt"
 ARMPKGARCH_tune-iwmmxt = "iwmmxt"
diff --git a/meta/conf/machine/include/tune-strongarm1100.inc b/meta/conf/machine/include/tune-strongarm1100.inc
index 7b2fa8e..80cfb8a 100644
--- a/meta/conf/machine/include/tune-strongarm1100.inc
+++ b/meta/conf/machine/include/tune-strongarm1100.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv4"
 require conf/machine/include/arm/arch-armv4.inc
 
 TUNEVALID[strongarm] = "Enable Strongarm 1100 series processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'strongarm', ' -mtune=strongarm1100', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'strongarm', ' -mcpu=strongarm1100', '', d)}"
 
 AVAILTUNES += "strongarm"
 ARMPKGARCH_tune-strongarm = "strongarm"
diff --git a/meta/conf/machine/include/tune-xscale.inc b/meta/conf/machine/include/tune-xscale.inc
index 2a0610f..0d07333 100644
--- a/meta/conf/machine/include/tune-xscale.inc
+++ b/meta/conf/machine/include/tune-xscale.inc
@@ -3,7 +3,7 @@ DEFAULTTUNE ?= "armv5te"
 require conf/machine/include/arm/arch-armv5-dsp.inc
 
 TUNEVALID[xscale] = "Enable PXA255/PXA26x Xscale specific processor optimizations"
-TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'xscale', ' -mtune=xscale', '', d)}"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'xscale', ' -mcpu=xscale', '', d)}"
 
 AVAILTUNES += "xscale"
 ARMPKGARCH_tune-xscale = "xscale"
-- 
2.6.3



^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 01/15] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS
  2015-12-10 13:48 ` [PATCH][master][RESEND 01/15] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS Martin Jansa
@ 2015-12-10 21:11   ` Khem Raj
  2015-12-18 13:15     ` [PATCHv2] " Martin Jansa
  0 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-12-10 21:11 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 1899 bytes --]


> On Dec 10, 2015, at 5:48 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> * sometimes it's hard to see whots wrong here

typo 'whats'

> * error message:
>  Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (cortexa7t2hfhf-vfp-vfpv4-neon).
>  doesn't help much to understand what exactly went wrong and where
> 
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
> meta/classes/sanity.bbclass | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
> index ad9dda8..9f35558 100644
> --- a/meta/classes/sanity.bbclass
> +++ b/meta/classes/sanity.bbclass
> @@ -329,6 +329,7 @@ def check_sanity_validmachine(sanity_data):
>     # Check that we don't have duplicate entries in PACKAGE_ARCHS & that TUNE_PKGARCH is in PACKAGE_ARCHS
>     pkgarchs = sanity_data.getVar('PACKAGE_ARCHS', True)
>     tunepkg = sanity_data.getVar('TUNE_PKGARCH', True)
> +    defaulttune = sanity_data.getVar('DEFAULTTUNE', True)
>     tunefound = False
>     seen = {}
>     dups = []
> @@ -345,7 +346,7 @@ def check_sanity_validmachine(sanity_data):
>         messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)
> 
>     if tunefound == False:
> -        messages = messages + "Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (%s)." % tunepkg
> +        messages = messages + "Error, the PACKAGE_ARCHS variable (%s) for DEFAULTTUNE (%s) does not contain TUNE_PKGARCH (%s)." % (pkgarchs, defaulttune, tunepkg)



> 
>     return messages
> 
> --
> 2.6.3
> 
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 11/15] feature-arm-{neon, vfp}.inc: refactor and fix issues
  2015-12-10 13:48 ` [PATCH][master][RESEND 11/15] feature-arm-{neon, vfp}.inc: refactor and fix issues Martin Jansa
@ 2015-12-10 21:14   ` Khem Raj
  2015-12-18 13:10     ` Martin Jansa
  0 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-12-10 21:14 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 32723 bytes --]


> On Dec 10, 2015, at 5:48 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> 
> * respect all 4 vfp options ('vfp', 'vfpv3d16', 'vfpv3', 'vfpv4') when
>  setting -mfloat-abi and ARMPKGSFX_EABI, without this change it wasn't
>  possible to use call-convention hard together with vfpv4
> * move 'vfpv3d16', 'vfpv3', 'vfpv4' support from
>  feature-arm-vfp.inc
>  to
>  feature-arm-neon.inc

may be this should be other way around semantically, what does vip file has

>  the main difference is that feature-arm-vfp.inc is included in
>  arch-armv5.inc while feature-arm-neon.inc only in armv7*.inc, so
>  these options should be added to TUNEVALID also only for armv7*
>  MACHINEs.
> * support vfpv4 with or without neon
>  when both vfpv4 and neon are in TUNE_FEATURES we want to set only one
>  -mfpu parameter and to neon-vfpv4
> * prevent multiple appends to ARMPKGSFX_FPU, we don't want to include
>  e.g. -vfp as well as -vfpv4 when both "vfp" and "vfpv4" are in
>  TUNE_FEATURES
> * add -mfpu=vfp for tunes with "vfp" in TUNE_FEATURES - before that we
>  were only adding -vfp to ARMPKGSFX_FPU
> * add TUNE_CCARGS_MFPU variable which is used to set -mfpu parameter as
>  well as ARMPKGSFX_FPU suffix in TUNE_PKGARCH, all enabled values are
>  appended to it based on TUNE_FEATURES and then the last one is used
>  in the actual param and suffix
> * this prevents multiple -mfpu options in TUNE_CCARGS
> 
> * !!!
>  This means we need to change TUNE_PKGARCH and PACKAGE_EXTRA_ARCHS for
>  vfpv4, vfpv3d16, vfpv3 tunes, because the -vfp* isn't prependend
>  multiple times. If you're using one of these new DEFAULTTUNES (which
>  were at least partially broken anyway) and depend on working binary
>  package feed upgrade-path, then don't forget to migrate PR service
>  database to new TUNE_PKGARCH.
> 
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
> meta/conf/machine/include/arm/arch-armv7a.inc      | 64 +++++++++++-----------
> meta/conf/machine/include/arm/feature-arm-neon.inc | 19 ++++++-
> meta/conf/machine/include/arm/feature-arm-vfp.inc  | 22 +++-----
> meta/conf/machine/include/tune-cortexa15.inc       |  8 +--
> meta/conf/machine/include/tune-cortexa17.inc       |  8 +--
> meta/conf/machine/include/tune-cortexa5.inc        |  8 +--
> meta/conf/machine/include/tune-cortexa7.inc        | 12 ++--
> meta/conf/machine/include/tune-cortexa8.inc        |  8 +--
> meta/conf/machine/include/tune-cortexa9.inc        |  8 +--
> 9 files changed, 84 insertions(+), 73 deletions(-)
> 
> diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
> index 0c6e755..1f2e071 100644
> --- a/meta/conf/machine/include/arm/arch-armv7a.inc
> +++ b/meta/conf/machine/include/arm/arch-armv7a.inc
> @@ -32,14 +32,14 @@ TUNE_FEATURES_tune-armv7a-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon}  vfpv
> TUNE_FEATURES_tune-armv7at-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon} vfpv4"
> PACKAGE_EXTRA_ARCHS_tune-armv7a             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7a armv7a-vfp"
> PACKAGE_EXTRA_ARCHS_tune-armv7at            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-vfpv3d16 armv7at2-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16}  armv7a-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3 armv7at2-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  armv7a-vfp-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-vfp-neon-vfpv4 armv7at2-vfp-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfpv3d16 armv7at2-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16}  armv7a-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfpv3 armv7at2-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-neon armv7at2-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  armv7a-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-neon-vfpv4 armv7at2-neon-vfpv4"
> 
> # HF Tunes
> AVAILTUNES += "armv7ahf armv7athf armv7ahf-vfpv3d16 armv7athf-vfpv3d16 armv7ahf-vfpv3 armv7athf-vfpv3 armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
> @@ -65,14 +65,14 @@ TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv
> TUNE_FEATURES_tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} callconvention-hard"
> PACKAGE_EXTRA_ARCHS_tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7ahf-vfp"
> PACKAGE_EXTRA_ARCHS_tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-vfpv3d16 armv7at2hf-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16}  armv7ahf-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfp-vfpv3d16-vfpv3 armv7at2hf-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-neon armv7at2hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  armv7ahf-vfp-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-vfp-neon-vfpv4 armv7at2hf-vfp-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfpv3d16 armv7at2hf-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16}  armv7ahf-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfpv3 armv7at2hf-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-neon armv7at2hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  armv7ahf-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-neon-vfpv4 armv7at2hf-neon-vfpv4"
> 
> # Big Endian
> AVAILTUNES += "armv7ab armv7atb armv7ab-vfpv3d16 armv7atb-vfpv3d16 armv7ab-vfpv3 armv7atb-vfpv3 armv7ab-neon armv7atb-neon armv7ab-neon-vfpv4 armv7atb-neon-vfpv4"
> @@ -98,14 +98,14 @@ TUNE_FEATURES_tune-armv7ab-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4
> TUNE_FEATURES_tune-armv7atb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} bigendian"
> PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7ab-vfp"
> PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-vfpv3d16 armv7at2b-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon}  armv7ab-vfp-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-vfp-neon-vfpv4 armv7at2b-vfp-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfpv3d16 armv7at2b-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfpv3 armv7at2b-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-neon armv7at2b-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon}  armv7ab-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-neon-vfpv4 armv7at2b-neon-vfpv4"
> 
> # Big Endian + HF
> AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-neon armv7athfb-neon armv7ahfb-neon-vfpv4 armv7athfb-neon-vfpv4"
> @@ -131,11 +131,11 @@ TUNE_FEATURES_tune-armv7ahfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-v
> TUNE_FEATURES_tune-armv7athfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} bigendian"
> PACKAGE_EXTRA_ARCHS_tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7ahfb-vfp"
> PACKAGE_EXTRA_ARCHS_tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-vfpv3d16 armv7at2hfb-vfp-vfpv3d16"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16}  armv7ahfb-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfp-vfpv3d16-vfpv3 armv7at2hfb-vfp-vfpv3d16-vfpv3"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-neon armv7at2hfb-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon}  armv7ahfb-vfp-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-vfp-neon-vfpv4 armv7at2hfb-vfp-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfpv3d16 armv7at2hfb-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16}  armv7ahfb-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfpv3 armv7at2hfb-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-neon armv7at2hfb-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon}  armv7ahfb-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-neon-vfpv4 armv7at2hfb-neon-vfpv4"
> diff --git a/meta/conf/machine/include/arm/feature-arm-neon.inc b/meta/conf/machine/include/arm/feature-arm-neon.inc
> index e9351f9..50d9175 100644
> --- a/meta/conf/machine/include/arm/feature-arm-neon.inc
> +++ b/meta/conf/machine/include/arm/feature-arm-neon.inc
> @@ -1,3 +1,18 @@
> +# GCC supports following options:
> +# 'vfp', 'vfpv3', 'vfpv3-fp16', 'vfpv3-d16', 'vfpv3-d16-fp16', 'vfpv3xd', 'vfpv3xd-fp16', 'neon', 'neon-fp16', 'vfpv4', 'vfpv4-d16', 'fpv4-sp-d16', 'neon-vfpv4', 'fpv5-d16', 'fpv5-sp-d16', 'fp-armv8', 'neon-fp-armv8', and 'crypto-neon-fp-armv8'
> +
> +# Only some combinations are supported here.
> +# 'vfp', -mfloat-abi parameter and 'hf' suffix is implemented in feature-arm-vfp.inc
> +
> TUNEVALID[neon] = "Enable Neon SIMD accelerator unit."
> -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', bb.utils.contains('TUNE_FEATURES', 'vfpv4', ' -mfpu=neon-vfpv4', ' -mfpu=neon', d), '' , d)}"
> -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', '-neon', '', d)}"
> +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', ' neon', '', d)}"
> +
> +TUNEVALID[vfpv3d16] = "Enable Vector Floating Point Version 3 with 16 registers (vfpv3-d16) unit."
> +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', ' vfpv3d16', '', d)}"
> +
> +TUNEVALID[vfpv3] = "Enable Vector Floating Point Version 3 with 32 registers (vfpv3) unit."
> +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', ' vfpv3', '' , d)}"
> +
> +TUNEVALID[vfpv4] = "Enable Vector Floating Point Version 4 (vfpv4) unit."
> +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv4', ' vfpv4', '', d)}"
> +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', [ 'vfpv4', 'neon' ], ' neon-vfpv4', '', d)}"
> diff --git a/meta/conf/machine/include/arm/feature-arm-vfp.inc b/meta/conf/machine/include/arm/feature-arm-vfp.inc
> index e23d377..1b39488 100644
> --- a/meta/conf/machine/include/arm/feature-arm-vfp.inc
> +++ b/meta/conf/machine/include/arm/feature-arm-vfp.inc
> @@ -1,17 +1,13 @@
> -TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
> -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfp', '-vfp', '' ,d)}"
> -
> -TUNEVALID[vfpv3d16] = "Enable Vector Floating Point Version 3 with 16 registers (vfpv3-d16) unit."
> -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', ' -mfpu=vfpv3-d16', '', d)}"
> -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '-vfpv3d16', '' ,d)}"
> +# This is only for VFPv1 or VFPv2, other vfp* tunes are defined in
> +# feature-arm-neon.inc, because they are available only for armv7*
> +# and this .inc file is included from armv5
> 
> -TUNEVALID[vfpv3] = "Enable Vector Floating Point Version 3 with 32 registers (vfpv3) unit."
> -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', ' -mfpu=vfpv3', '', d)}"
> -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', '-vfpv3', '' ,d)}"
> +TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
> +TUNE_CCARGS_MFPU .= "${@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)}"
> +TUNE_CCARGS  .= "${@ (' -mfpu=%s ' % d.getVar('TUNE_CCARGS_MFPU', True).split()[-1]) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else ''}"
> +ARMPKGSFX_FPU = "${@ ('-%s'        % d.getVar('TUNE_CCARGS_MFPU', True).split()[-1]) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else ''}"
> 
> 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('TUNE_FEATURES', 'callconvention-hard', ' -mfloat-abi=hard', ' -mfloat-abi=softfp', d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
> +ARMPKGSFX_EABI = "${@ bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hf',                '',                    d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
> diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
> index b4a693d..7e597f3 100644
> --- a/meta/conf/machine/include/tune-cortexa15.inc
> +++ b/meta/conf/machine/include/tune-cortexa15.inc
> @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
> PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-vfp-neon cortexa15t2-vfp cortexa15t2-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
> 
> # HF Tunes
> AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon"
> @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon
> TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
> PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon cortexa15t2hf-vfp cortexa15t2hf-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
> index 69232d0..5cc4567 100644
> --- a/meta/conf/machine/include/tune-cortexa17.inc
> +++ b/meta/conf/machine/include/tune-cortexa17.inc
> @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa17-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> TUNE_FEATURES_tune-cortexa17t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa17"
> PACKAGE_EXTRA_ARCHS_tune-cortexa17             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa17-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa17t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa17-vfp cortexa17t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-vfp-neon cortexa17t2-vfp cortexa17t2-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-neon cortexa17t2-vfp cortexa17t2-neon"
> 
> # HF Tunes
> AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon"
> @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa17hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon
> TUNE_FEATURES_tune-cortexa17thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa17"
> PACKAGE_EXTRA_ARCHS_tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa17hf-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa17hf-vfp cortexa17t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-vfp-neon cortexa17t2hf-vfp cortexa17t2hf-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-neon cortexa17t2hf-vfp cortexa17t2hf-neon"
> diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
> index b649641..0d82854 100644
> --- a/meta/conf/machine/include/tune-cortexa5.inc
> +++ b/meta/conf/machine/include/tune-cortexa5.inc
> @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa5-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> TUNE_FEATURES_tune-cortexa5t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa5"
> PACKAGE_EXTRA_ARCHS_tune-cortexa5             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa5-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa5t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa5-vfp cortexa5t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa5-vfp cortexa5-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-vfp-neon cortexa5t2-vfp cortexa5t2-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa5-vfp cortexa5-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-neon cortexa5t2-vfp cortexa5t2-neon"
> 
> # HF Tunes
> AVAILTUNES += "cortexa5hf cortexa5thf cortexa5hf-neon cortexa5thf-neon"
> @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa5hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
> TUNE_FEATURES_tune-cortexa5thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa5"
> PACKAGE_EXTRA_ARCHS_tune-cortexa5hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa5hf-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa5thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-vfp-neon cortexa5t2hf-vfp cortexa5t2hf-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-neon cortexa5t2hf-vfp cortexa5t2hf-neon"
> diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
> index 23f2ff6..133ce38 100644
> --- a/meta/conf/machine/include/tune-cortexa7.inc
> +++ b/meta/conf/machine/include/tune-cortexa7.inc
> @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
> PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-vfp-neon cortexa7t2-vfp cortexa7t2-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
> 
> # HF Tunes
> AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
> @@ -36,7 +36,7 @@ TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-
> TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
> PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon cortexa7t2hf-vfp-vfpv4-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
> diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
> index 71706e4..1daaf83 100644
> --- a/meta/conf/machine/include/tune-cortexa8.inc
> +++ b/meta/conf/machine/include/tune-cortexa8.inc
> @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa8-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> TUNE_FEATURES_tune-cortexa8t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa8"
> PACKAGE_EXTRA_ARCHS_tune-cortexa8             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa8-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa8t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa8-vfp cortexa8-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-vfp-neon cortexa8t2-vfp cortexa8t2-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa8-vfp cortexa8-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-neon cortexa8t2-vfp cortexa8t2-neon"
> 
> # HF Tunes
> AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon cortexa8thf-neon"
> @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa8hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
> TUNE_FEATURES_tune-cortexa8thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa8"
> PACKAGE_EXTRA_ARCHS_tune-cortexa8hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa8hf-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa8thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon cortexa8t2hf-vfp cortexa8t2hf-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-neon cortexa8t2hf-vfp cortexa8t2hf-neon"
> diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
> index ddd6f77..29e6651 100644
> --- a/meta/conf/machine/include/tune-cortexa9.inc
> +++ b/meta/conf/machine/include/tune-cortexa9.inc
> @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa9-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> TUNE_FEATURES_tune-cortexa9t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa9"
> PACKAGE_EXTRA_ARCHS_tune-cortexa9             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa9-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa9t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa9-vfp cortexa9-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-vfp-neon cortexa9t2-vfp cortexa9t2-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa9-vfp cortexa9-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-neon cortexa9t2-vfp cortexa9t2-neon"
> 
> # HF Tunes
> AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
> @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa9hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
> TUNE_FEATURES_tune-cortexa9thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa9"
> PACKAGE_EXTRA_ARCHS_tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa9hf-vfp"
> PACKAGE_EXTRA_ARCHS_tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-vfp-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon cortexa9t2hf-vfp cortexa9t2hf-vfp-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-neon cortexa9t2hf-vfp cortexa9t2hf-neon"
> --
> 2.6.3
> 
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-10 13:48 ` [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15 Martin Jansa
@ 2015-12-18  3:13   ` Andre McCurdy
  2015-12-18 13:13     ` Martin Jansa
  0 siblings, 1 reply; 31+ messages in thread
From: Andre McCurdy @ 2015-12-18  3:13 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OE Core mailing list

On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> * be aware that this -march value is available only in gcc-4.9 and
>   newer:
>   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
> * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
>   We either have to stop putting -march in default CCARGS or at
>   least set it compatible one like this patch does.

Can we drop the concept of armv7ve without Thumb support?

Thumb was optional for armv4 but from armv5 onwards every ARM core has
been able to support Thumb as well. Unfortunately the cpu tuning .inc
files in oe-core for armv5 and above just seem to have copied any
pasted from armv4 and so provide bogus non-thumb capable tuning
options, which just add a lot of unnecessary complexity (the only real
difference between them is that the thumb capable versions respect
ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).

To avoid breaking existing machine configs and package feeds, I guess
we might be stuck with the existing AVAILTUNES for armv7a and below,
but can we at least fix it for armv7ve ?


> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
>  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141 +++++++++++++++++++++
>  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
>  meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
>  meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
>  4 files changed, 194 insertions(+), 52 deletions(-)
>  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
>
> diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc b/meta/conf/machine/include/arm/arch-armv7ve.inc
> new file mode 100644
> index 0000000..79e1ef6
> --- /dev/null
> +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
> @@ -0,0 +1,141 @@
> +DEFAULTTUNE ?= "armv7ve"
> +
> +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
> +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
> +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', ' -march=armv7ve', '', d)}"
> +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 'armv7ve:', '' ,d)}"
> +
> +require conf/machine/include/arm/arch-armv6.inc
> +require conf/machine/include/arm/feature-arm-neon.inc
> +
> +# Little Endian base configs
> +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16 armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon armv7ve-neon-vfpv4 armv7vet-neon-vfpv4"
> +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
> +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
> +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
> +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
> +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
> +TUNE_FEATURES_tune-armv7vet            = "${TUNE_FEATURES_tune-armv7ve} thumb"
> +TUNE_FEATURES_tune-armv7ve-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
> +TUNE_FEATURES_tune-armv7vet-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
> +TUNE_FEATURES_tune-armv7ve-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
> +TUNE_FEATURES_tune-armv7vet-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
> +TUNE_FEATURES_tune-armv7ve-neon        = "${TUNE_FEATURES_tune-armv7ve}  neon"
> +TUNE_FEATURES_tune-armv7vet-neon       = "${TUNE_FEATURES_tune-armv7vet} neon"
> +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
> +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ve             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vet            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp armv7vet2-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3 armv7vet2-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4 armv7vet2-neon-vfpv4"
> +
> +# HF Tunes
> +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16 armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-neon armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
> +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
> +TUNE_FEATURES_tune-armv7vehf             = "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
> +TUNE_FEATURES_tune-armv7vethf            = "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
> +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
> +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
> +TUNE_FEATURES_tune-armv7vehf-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
> +TUNE_FEATURES_tune-armv7vethf-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
> +TUNE_FEATURES_tune-armv7vehf-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
> +TUNE_FEATURES_tune-armv7vethf-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
> +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
> +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp armv7vet2hf-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16 armv7vet2hf-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3 armv7vet2hf-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4 armv7vet2hf-neon-vfpv4"
> +
> +# Big Endian
> +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16 armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
> +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
> +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
> +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
> +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
> +TUNE_FEATURES_tune-armv7veb             = "${TUNE_FEATURES_tune-armv7ve}             bigendian"
> +TUNE_FEATURES_tune-armv7vetb            = "${TUNE_FEATURES_tune-armv7vet}            bigendian"
> +TUNE_FEATURES_tune-armv7veb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
> +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
> +TUNE_FEATURES_tune-armv7veb-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
> +TUNE_FEATURES_tune-armv7vetb-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
> +TUNE_FEATURES_tune-armv7veb-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
> +TUNE_FEATURES_tune-armv7vetb-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
> +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
> +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
> +PACKAGE_EXTRA_ARCHS_tune-armv7veb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16 armv7vet2b-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3 armv7vet2b-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4 armv7vet2b-neon-vfpv4"
> +
> +# Big Endian + HF
> +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16 armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3 armv7vehfb-neon armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
> +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
> +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
> +TUNE_FEATURES_tune-armv7vehfb             = "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
> +TUNE_FEATURES_tune-armv7vethfb            = "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
> +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
> +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
> +TUNE_FEATURES_tune-armv7vehfb-vfpv3       = "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
> +TUNE_FEATURES_tune-armv7vethfb-vfpv3      = "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
> +TUNE_FEATURES_tune-armv7vehfb-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
> +TUNE_FEATURES_tune-armv7vethfb-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
> +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
> +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp armv7vet2hfb-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16 armv7vet2hfb-vfpv3d16"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}  armv7vehfb-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3 armv7vet2hfb-vfpv3"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}  armv7vehfb-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4 armv7vet2hfb-neon-vfpv4"
> diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> index 5632171..54c0cee 100644
> --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
>  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7a', 't2', '', d)}"
>  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r', 't2', '', d)}"
>  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7m', 't2', '', d)}"
> +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 't2', '', d)}"
>
>  # If the device supports ARM, then respect ARM_THUMB_OPT (which can be "arm" or "thumb")
>  # If the defice doesn't support ARM, then always set "thumb" even when
> diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
> index 8b34bb2..cfc8151 100644
> --- a/meta/conf/machine/include/tune-cortexa15.inc
> +++ b/meta/conf/machine/include/tune-cortexa15.inc
> @@ -1,6 +1,6 @@
> -DEFAULTTUNE ?= "armv7a-neon"
> +DEFAULTTUNE ?= "armv7ve-neon"
>
> -require conf/machine/include/arm/arch-armv7a.inc
> +require conf/machine/include/arm/arch-armv7ve.inc
>
>  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor optimizations"
>  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mtune=cortex-a15', '', d)}"
> @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        = "cortexa15"
>  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
>  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
>  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
> -TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7a}             cortexa15"
> -TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7at}            cortexa15"
> -TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
> -TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
> -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
> -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
> +TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
> +TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
> +TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
> +TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
> +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
> +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp cortexa15-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
>
>  # HF Tunes
>  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
> @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
>  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
>  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
>  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
> -TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
> -TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
> -TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
> -TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
> -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
> -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
> +TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
> +TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
> +TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
> +TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
> +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
> +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp cortexa15hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
> diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
> index 4fea36f..84432bd 100644
> --- a/meta/conf/machine/include/tune-cortexa7.inc
> +++ b/meta/conf/machine/include/tune-cortexa7.inc
> @@ -1,6 +1,6 @@
> -DEFAULTTUNE ?= "armv7a-neon"
> +DEFAULTTUNE ?= "armv7ve-neon"
>
> -require conf/machine/include/arm/arch-armv7a.inc
> +require conf/machine/include/arm/arch-armv7ve.inc
>
>  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor optimizations"
>  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mtune=cortex-a7', '', d)}"
> @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
>  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
>  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
>  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
> -TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7a}             cortexa7"
> -TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7at}            cortexa7"
> -TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
> -TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
> -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
> -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
> +TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
> +TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
> +TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
> +TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
> +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
> +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp cortexa7-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
>
>  # HF Tunes
>  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
> @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        = "cortexa7"
>  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
>  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
>  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
> -TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
> -TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
> -TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
> -TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
> -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
> -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
> -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
> +TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
> +TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
> +TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
> +TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
> +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
> +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
> +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
> --
> 2.6.3
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 11/15] feature-arm-{neon, vfp}.inc: refactor and fix issues
  2015-12-10 21:14   ` Khem Raj
@ 2015-12-18 13:10     ` Martin Jansa
  0 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-18 13:10 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 33625 bytes --]

On Thu, Dec 10, 2015 at 01:14:25PM -0800, Khem Raj wrote:
> 
> > On Dec 10, 2015, at 5:48 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> > 
> > * respect all 4 vfp options ('vfp', 'vfpv3d16', 'vfpv3', 'vfpv4') when
> >  setting -mfloat-abi and ARMPKGSFX_EABI, without this change it wasn't
> >  possible to use call-convention hard together with vfpv4
> > * move 'vfpv3d16', 'vfpv3', 'vfpv4' support from
> >  feature-arm-vfp.inc
> >  to
> >  feature-arm-neon.inc
> 
> may be this should be other way around semantically, what does vip file has

But that would include them and mark as valid for armv5 as said below.

> >  the main difference is that feature-arm-vfp.inc is included in
> >  arch-armv5.inc while feature-arm-neon.inc only in armv7*.inc, so
> >  these options should be added to TUNEVALID also only for armv7*
> >  MACHINEs.
> > * support vfpv4 with or without neon
> >  when both vfpv4 and neon are in TUNE_FEATURES we want to set only one
> >  -mfpu parameter and to neon-vfpv4
> > * prevent multiple appends to ARMPKGSFX_FPU, we don't want to include
> >  e.g. -vfp as well as -vfpv4 when both "vfp" and "vfpv4" are in
> >  TUNE_FEATURES
> > * add -mfpu=vfp for tunes with "vfp" in TUNE_FEATURES - before that we
> >  were only adding -vfp to ARMPKGSFX_FPU
> > * add TUNE_CCARGS_MFPU variable which is used to set -mfpu parameter as
> >  well as ARMPKGSFX_FPU suffix in TUNE_PKGARCH, all enabled values are
> >  appended to it based on TUNE_FEATURES and then the last one is used
> >  in the actual param and suffix
> > * this prevents multiple -mfpu options in TUNE_CCARGS
> > 
> > * !!!
> >  This means we need to change TUNE_PKGARCH and PACKAGE_EXTRA_ARCHS for
> >  vfpv4, vfpv3d16, vfpv3 tunes, because the -vfp* isn't prependend
> >  multiple times. If you're using one of these new DEFAULTTUNES (which
> >  were at least partially broken anyway) and depend on working binary
> >  package feed upgrade-path, then don't forget to migrate PR service
> >  database to new TUNE_PKGARCH.
> > 
> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> > ---
> > meta/conf/machine/include/arm/arch-armv7a.inc      | 64 +++++++++++-----------
> > meta/conf/machine/include/arm/feature-arm-neon.inc | 19 ++++++-
> > meta/conf/machine/include/arm/feature-arm-vfp.inc  | 22 +++-----
> > meta/conf/machine/include/tune-cortexa15.inc       |  8 +--
> > meta/conf/machine/include/tune-cortexa17.inc       |  8 +--
> > meta/conf/machine/include/tune-cortexa5.inc        |  8 +--
> > meta/conf/machine/include/tune-cortexa7.inc        | 12 ++--
> > meta/conf/machine/include/tune-cortexa8.inc        |  8 +--
> > meta/conf/machine/include/tune-cortexa9.inc        |  8 +--
> > 9 files changed, 84 insertions(+), 73 deletions(-)
> > 
> > diff --git a/meta/conf/machine/include/arm/arch-armv7a.inc b/meta/conf/machine/include/arm/arch-armv7a.inc
> > index 0c6e755..1f2e071 100644
> > --- a/meta/conf/machine/include/arm/arch-armv7a.inc
> > +++ b/meta/conf/machine/include/arm/arch-armv7a.inc
> > @@ -32,14 +32,14 @@ TUNE_FEATURES_tune-armv7a-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon}  vfpv
> > TUNE_FEATURES_tune-armv7at-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon} vfpv4"
> > PACKAGE_EXTRA_ARCHS_tune-armv7a             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7a armv7a-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-armv7at            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-vfpv3d16 armv7at2-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16}  armv7a-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfp-vfpv3d16-vfpv3 armv7at2-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfp-neon armv7at2-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  armv7a-vfp-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-vfp-neon-vfpv4 armv7at2-vfp-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfpv3d16 armv7at2-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16}  armv7a-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfpv3 armv7at2-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  armv7a-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-neon armv7at2-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  armv7a-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-neon-vfpv4 armv7at2-neon-vfpv4"
> > 
> > # HF Tunes
> > AVAILTUNES += "armv7ahf armv7athf armv7ahf-vfpv3d16 armv7athf-vfpv3d16 armv7ahf-vfpv3 armv7athf-vfpv3 armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
> > @@ -65,14 +65,14 @@ TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv
> > TUNE_FEATURES_tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} callconvention-hard"
> > PACKAGE_EXTRA_ARCHS_tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7ahf-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-vfpv3d16 armv7at2hf-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16}  armv7ahf-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfp-vfpv3d16-vfpv3 armv7at2hf-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfp-neon armv7at2hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  armv7ahf-vfp-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-vfp-neon-vfpv4 armv7at2hf-vfp-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfpv3d16 armv7at2hf-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16}  armv7ahf-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfpv3 armv7at2hf-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  armv7ahf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-neon armv7at2hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  armv7ahf-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-neon-vfpv4 armv7at2hf-neon-vfpv4"
> > 
> > # Big Endian
> > AVAILTUNES += "armv7ab armv7atb armv7ab-vfpv3d16 armv7atb-vfpv3d16 armv7ab-vfpv3 armv7atb-vfpv3 armv7ab-neon armv7atb-neon armv7ab-neon-vfpv4 armv7atb-neon-vfpv4"
> > @@ -98,14 +98,14 @@ TUNE_FEATURES_tune-armv7ab-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4
> > TUNE_FEATURES_tune-armv7atb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} bigendian"
> > PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7ab-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-vfpv3d16 armv7at2b-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfp-vfpv3d16-vfpv3 armv7at2b-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfp-neon armv7at2b-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon}  armv7ab-vfp-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-vfp-neon-vfpv4 armv7at2b-vfp-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfpv3d16 armv7at2b-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16}  armv7ab-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfpv3 armv7at2b-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab}  armv7ab-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-neon armv7at2b-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon}  armv7ab-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-neon-vfpv4 armv7at2b-neon-vfpv4"
> > 
> > # Big Endian + HF
> > AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-neon armv7athfb-neon armv7ahfb-neon-vfpv4 armv7athfb-neon-vfpv4"
> > @@ -131,11 +131,11 @@ TUNE_FEATURES_tune-armv7ahfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-v
> > TUNE_FEATURES_tune-armv7athfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} bigendian"
> > PACKAGE_EXTRA_ARCHS_tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7ahfb-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-vfpv3d16 armv7at2hfb-vfp-vfpv3d16"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16}  armv7ahfb-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfp-vfpv3d16-vfpv3 armv7at2hfb-vfp-vfpv3d16-vfpv3"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfp-neon armv7at2hfb-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon}  armv7ahfb-vfp-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-vfp-neon-vfpv4 armv7at2hfb-vfp-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfpv3d16 armv7at2hfb-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16}  armv7ahfb-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfpv3 armv7at2hfb-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb}  armv7ahfb-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-neon armv7at2hfb-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon}  armv7ahfb-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-neon-vfpv4 armv7at2hfb-neon-vfpv4"
> > diff --git a/meta/conf/machine/include/arm/feature-arm-neon.inc b/meta/conf/machine/include/arm/feature-arm-neon.inc
> > index e9351f9..50d9175 100644
> > --- a/meta/conf/machine/include/arm/feature-arm-neon.inc
> > +++ b/meta/conf/machine/include/arm/feature-arm-neon.inc
> > @@ -1,3 +1,18 @@
> > +# GCC supports following options:
> > +# 'vfp', 'vfpv3', 'vfpv3-fp16', 'vfpv3-d16', 'vfpv3-d16-fp16', 'vfpv3xd', 'vfpv3xd-fp16', 'neon', 'neon-fp16', 'vfpv4', 'vfpv4-d16', 'fpv4-sp-d16', 'neon-vfpv4', 'fpv5-d16', 'fpv5-sp-d16', 'fp-armv8', 'neon-fp-armv8', and 'crypto-neon-fp-armv8'
> > +
> > +# Only some combinations are supported here.
> > +# 'vfp', -mfloat-abi parameter and 'hf' suffix is implemented in feature-arm-vfp.inc
> > +
> > TUNEVALID[neon] = "Enable Neon SIMD accelerator unit."
> > -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', bb.utils.contains('TUNE_FEATURES', 'vfpv4', ' -mfpu=neon-vfpv4', ' -mfpu=neon', d), '' , d)}"
> > -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', '-neon', '', d)}"
> > +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'neon', ' neon', '', d)}"
> > +
> > +TUNEVALID[vfpv3d16] = "Enable Vector Floating Point Version 3 with 16 registers (vfpv3-d16) unit."
> > +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', ' vfpv3d16', '', d)}"
> > +
> > +TUNEVALID[vfpv3] = "Enable Vector Floating Point Version 3 with 32 registers (vfpv3) unit."
> > +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', ' vfpv3', '' , d)}"
> > +
> > +TUNEVALID[vfpv4] = "Enable Vector Floating Point Version 4 (vfpv4) unit."
> > +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv4', ' vfpv4', '', d)}"
> > +TUNE_CCARGS_MFPU .= "${@bb.utils.contains('TUNE_FEATURES', [ 'vfpv4', 'neon' ], ' neon-vfpv4', '', d)}"
> > diff --git a/meta/conf/machine/include/arm/feature-arm-vfp.inc b/meta/conf/machine/include/arm/feature-arm-vfp.inc
> > index e23d377..1b39488 100644
> > --- a/meta/conf/machine/include/arm/feature-arm-vfp.inc
> > +++ b/meta/conf/machine/include/arm/feature-arm-vfp.inc
> > @@ -1,17 +1,13 @@
> > -TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
> > -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfp', '-vfp', '' ,d)}"
> > -
> > -TUNEVALID[vfpv3d16] = "Enable Vector Floating Point Version 3 with 16 registers (vfpv3-d16) unit."
> > -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', ' -mfpu=vfpv3-d16', '', d)}"
> > -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '-vfpv3d16', '' ,d)}"
> > +# This is only for VFPv1 or VFPv2, other vfp* tunes are defined in
> > +# feature-arm-neon.inc, because they are available only for armv7*
> > +# and this .inc file is included from armv5
> > 
> > -TUNEVALID[vfpv3] = "Enable Vector Floating Point Version 3 with 32 registers (vfpv3) unit."
> > -TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', ' -mfpu=vfpv3', '', d)}"
> > -ARMPKGSFX_FPU .= "${@bb.utils.contains('TUNE_FEATURES', 'vfpv3', '-vfpv3', '' ,d)}"
> > +TUNEVALID[vfp] = "Enable Vector Floating Point (vfp) unit."
> > +TUNE_CCARGS_MFPU .= "${@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)}"
> > +TUNE_CCARGS  .= "${@ (' -mfpu=%s ' % d.getVar('TUNE_CCARGS_MFPU', True).split()[-1]) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else ''}"
> > +ARMPKGSFX_FPU = "${@ ('-%s'        % d.getVar('TUNE_CCARGS_MFPU', True).split()[-1]) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else ''}"
> > 
> > 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('TUNE_FEATURES', 'callconvention-hard', ' -mfloat-abi=hard', ' -mfloat-abi=softfp', d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
> > +ARMPKGSFX_EABI = "${@ bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hf',                '',                    d) if (d.getVar('TUNE_CCARGS_MFPU', True) != '') else '' }"
> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
> > index b4a693d..7e597f3 100644
> > --- a/meta/conf/machine/include/tune-cortexa15.inc
> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
> > @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> > TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-vfp-neon cortexa15t2-vfp cortexa15t2-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
> > 
> > # HF Tunes
> > AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon"
> > @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon
> > TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-vfp-neon cortexa15t2hf-vfp cortexa15t2hf-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> > diff --git a/meta/conf/machine/include/tune-cortexa17.inc b/meta/conf/machine/include/tune-cortexa17.inc
> > index 69232d0..5cc4567 100644
> > --- a/meta/conf/machine/include/tune-cortexa17.inc
> > +++ b/meta/conf/machine/include/tune-cortexa17.inc
> > @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa17-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> > TUNE_FEATURES_tune-cortexa17t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa17"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa17             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa17-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa17t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa17-vfp cortexa17t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-vfp-neon cortexa17t2-vfp cortexa17t2-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa17-vfp cortexa17-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa17-vfp cortexa17-neon cortexa17t2-vfp cortexa17t2-neon"
> > 
> > # HF Tunes
> > AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon"
> > @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa17hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon
> > TUNE_FEATURES_tune-cortexa17thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa17"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa17hf-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa17hf-vfp cortexa17t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-vfp-neon cortexa17t2hf-vfp cortexa17t2hf-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa17hf-vfp cortexa17hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa17hf-vfp cortexa17hf-neon cortexa17t2hf-vfp cortexa17t2hf-neon"
> > diff --git a/meta/conf/machine/include/tune-cortexa5.inc b/meta/conf/machine/include/tune-cortexa5.inc
> > index b649641..0d82854 100644
> > --- a/meta/conf/machine/include/tune-cortexa5.inc
> > +++ b/meta/conf/machine/include/tune-cortexa5.inc
> > @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa5-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> > TUNE_FEATURES_tune-cortexa5t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa5"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa5             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa5-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa5t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa5-vfp cortexa5t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa5-vfp cortexa5-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-vfp-neon cortexa5t2-vfp cortexa5t2-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa5-vfp cortexa5-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-neon cortexa5t2-vfp cortexa5t2-neon"
> > 
> > # HF Tunes
> > AVAILTUNES += "cortexa5hf cortexa5thf cortexa5hf-neon cortexa5thf-neon"
> > @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa5hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
> > TUNE_FEATURES_tune-cortexa5thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa5"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa5hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa5hf-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa5thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-vfp-neon cortexa5t2hf-vfp cortexa5t2hf-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa5hf-vfp cortexa5hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-neon cortexa5t2hf-vfp cortexa5t2hf-neon"
> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
> > index 23f2ff6..133ce38 100644
> > --- a/meta/conf/machine/include/tune-cortexa7.inc
> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
> > @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> > TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-vfp-neon cortexa7t2-vfp cortexa7t2-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
> > 
> > # HF Tunes
> > AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
> > @@ -36,7 +36,7 @@ TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-
> > TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-vfp-neon cortexa7hf-vfp-vfpv4-neon cortexa7t2hf-vfp cortexa7t2hf-vfp-neon cortexa7t2hf-vfp-vfpv4-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
> > diff --git a/meta/conf/machine/include/tune-cortexa8.inc b/meta/conf/machine/include/tune-cortexa8.inc
> > index 71706e4..1daaf83 100644
> > --- a/meta/conf/machine/include/tune-cortexa8.inc
> > +++ b/meta/conf/machine/include/tune-cortexa8.inc
> > @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa8-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> > TUNE_FEATURES_tune-cortexa8t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa8"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa8             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa8-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa8t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa8-vfp cortexa8-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-vfp-neon cortexa8t2-vfp cortexa8t2-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa8-vfp cortexa8-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-neon cortexa8t2-vfp cortexa8t2-neon"
> > 
> > # HF Tunes
> > AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon cortexa8thf-neon"
> > @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa8hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
> > TUNE_FEATURES_tune-cortexa8thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa8"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa8hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa8hf-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa8thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-vfp-neon cortexa8t2hf-vfp cortexa8t2hf-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa8hf-vfp cortexa8hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-neon cortexa8t2hf-vfp cortexa8t2hf-neon"
> > diff --git a/meta/conf/machine/include/tune-cortexa9.inc b/meta/conf/machine/include/tune-cortexa9.inc
> > index ddd6f77..29e6651 100644
> > --- a/meta/conf/machine/include/tune-cortexa9.inc
> > +++ b/meta/conf/machine/include/tune-cortexa9.inc
> > @@ -17,8 +17,8 @@ TUNE_FEATURES_tune-cortexa9-neon        = "${TUNE_FEATURES_tune-armv7a-neon}
> > TUNE_FEATURES_tune-cortexa9t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa9"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa9             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa9-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa9t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa9-vfp cortexa9-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-vfp-neon cortexa9t2-vfp cortexa9t2-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa9-vfp cortexa9-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-neon cortexa9t2-vfp cortexa9t2-neon"
> > 
> > # HF Tunes
> > AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
> > @@ -32,5 +32,5 @@ TUNE_FEATURES_tune-cortexa9hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}
> > TUNE_FEATURES_tune-cortexa9thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa9"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa9hf-vfp"
> > PACKAGE_EXTRA_ARCHS_tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-vfp-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-vfp-neon cortexa9t2hf-vfp cortexa9t2hf-vfp-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa9hf-vfp cortexa9hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-neon cortexa9t2hf-vfp cortexa9t2hf-neon"
> > --
> > 2.6.3
> > 
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> 



-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18  3:13   ` Andre McCurdy
@ 2015-12-18 13:13     ` Martin Jansa
  2015-12-18 20:08       ` Andre McCurdy
  0 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-18 13:13 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE Core mailing list

[-- Attachment #1: Type: text/plain, Size: 31058 bytes --]

On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> > * be aware that this -march value is available only in gcc-4.9 and
> >   newer:
> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
> >   We either have to stop putting -march in default CCARGS or at
> >   least set it compatible one like this patch does.
> 
> Can we drop the concept of armv7ve without Thumb support?
> 
> Thumb was optional for armv4 but from armv5 onwards every ARM core has
> been able to support Thumb as well. Unfortunately the cpu tuning .inc
> files in oe-core for armv5 and above just seem to have copied any
> pasted from armv4 and so provide bogus non-thumb capable tuning
> options, which just add a lot of unnecessary complexity (the only real
> difference between them is that the thumb capable versions respect
> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).
> 
> To avoid breaking existing machine configs and package feeds, I guess
> we might be stuck with the existing AVAILTUNES for armv7a and below,
> but can we at least fix it for armv7ve ?

Well even when the HW supports the thumb, some DISTROs tend to disable
it for whatever reasons (e.g. you can use very low common denominator
DEFAULTTUNE for many MACHINEs - which cannot be controlled by
ARM_INSTRUCTION_SET only).

What harm do you see from keeping tunes without Thumb? Only the
maintenance of the tune file? That's not so bad because it's exact copy
of arch-armv7a.inc with s/7a/7ve/g.

> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> > ---
> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141 +++++++++++++++++++++
> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
> >  meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
> >  meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
> >  4 files changed, 194 insertions(+), 52 deletions(-)
> >  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
> >
> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc b/meta/conf/machine/include/arm/arch-armv7ve.inc
> > new file mode 100644
> > index 0000000..79e1ef6
> > --- /dev/null
> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
> > @@ -0,0 +1,141 @@
> > +DEFAULTTUNE ?= "armv7ve"
> > +
> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', ' -march=armv7ve', '', d)}"
> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 'armv7ve:', '' ,d)}"
> > +
> > +require conf/machine/include/arm/arch-armv6.inc
> > +require conf/machine/include/arm/feature-arm-neon.inc
> > +
> > +# Little Endian base configs
> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16 armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon armv7ve-neon-vfpv4 armv7vet-neon-vfpv4"
> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
> > +TUNE_FEATURES_tune-armv7vet            = "${TUNE_FEATURES_tune-armv7ve} thumb"
> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
> > +TUNE_FEATURES_tune-armv7ve-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
> > +TUNE_FEATURES_tune-armv7vet-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
> > +TUNE_FEATURES_tune-armv7ve-neon        = "${TUNE_FEATURES_tune-armv7ve}  neon"
> > +TUNE_FEATURES_tune-armv7vet-neon       = "${TUNE_FEATURES_tune-armv7vet} neon"
> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp armv7vet2-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3 armv7vet2-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4 armv7vet2-neon-vfpv4"
> > +
> > +# HF Tunes
> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16 armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-neon armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
> > +TUNE_FEATURES_tune-armv7vehf             = "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vethf            = "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vehf-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vethf-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp armv7vet2hf-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16 armv7vet2hf-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3 armv7vet2hf-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4 armv7vet2hf-neon-vfpv4"
> > +
> > +# Big Endian
> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16 armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
> > +TUNE_FEATURES_tune-armv7veb             = "${TUNE_FEATURES_tune-armv7ve}             bigendian"
> > +TUNE_FEATURES_tune-armv7vetb            = "${TUNE_FEATURES_tune-armv7vet}            bigendian"
> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
> > +TUNE_FEATURES_tune-armv7veb-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
> > +TUNE_FEATURES_tune-armv7veb-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
> > +TUNE_FEATURES_tune-armv7vetb-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16 armv7vet2b-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3 armv7vet2b-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4 armv7vet2b-neon-vfpv4"
> > +
> > +# Big Endian + HF
> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16 armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3 armv7vehfb-neon armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
> > +TUNE_FEATURES_tune-armv7vehfb             = "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
> > +TUNE_FEATURES_tune-armv7vethfb            = "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       = "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      = "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
> > +TUNE_FEATURES_tune-armv7vehfb-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
> > +TUNE_FEATURES_tune-armv7vethfb-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp armv7vet2hfb-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16 armv7vet2hfb-vfpv3d16"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}  armv7vehfb-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3 armv7vet2hfb-vfpv3"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}  armv7vehfb-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4 armv7vet2hfb-neon-vfpv4"
> > diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> > index 5632171..54c0cee 100644
> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7a', 't2', '', d)}"
> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r', 't2', '', d)}"
> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7m', 't2', '', d)}"
> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 't2', '', d)}"
> >
> >  # If the device supports ARM, then respect ARM_THUMB_OPT (which can be "arm" or "thumb")
> >  # If the defice doesn't support ARM, then always set "thumb" even when
> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
> > index 8b34bb2..cfc8151 100644
> > --- a/meta/conf/machine/include/tune-cortexa15.inc
> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
> > @@ -1,6 +1,6 @@
> > -DEFAULTTUNE ?= "armv7a-neon"
> > +DEFAULTTUNE ?= "armv7ve-neon"
> >
> > -require conf/machine/include/arm/arch-armv7a.inc
> > +require conf/machine/include/arm/arch-armv7ve.inc
> >
> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor optimizations"
> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mtune=cortex-a15', '', d)}"
> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        = "cortexa15"
> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
> > -TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7a}             cortexa15"
> > -TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7at}            cortexa15"
> > -TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
> > -TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
> > +TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
> > +TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
> > +TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
> > +TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp cortexa15-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
> >
> >  # HF Tunes
> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
> > -TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
> > -TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
> > -TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
> > -TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
> > +TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
> > +TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
> > +TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
> > +TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp cortexa15hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
> > index 4fea36f..84432bd 100644
> > --- a/meta/conf/machine/include/tune-cortexa7.inc
> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
> > @@ -1,6 +1,6 @@
> > -DEFAULTTUNE ?= "armv7a-neon"
> > +DEFAULTTUNE ?= "armv7ve-neon"
> >
> > -require conf/machine/include/arm/arch-armv7a.inc
> > +require conf/machine/include/arm/arch-armv7ve.inc
> >
> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor optimizations"
> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mtune=cortex-a7', '', d)}"
> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
> > -TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7a}             cortexa7"
> > -TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7at}            cortexa7"
> > -TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
> > -TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
> > +TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
> > +TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
> > +TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
> > +TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp cortexa7-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
> >
> >  # HF Tunes
> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        = "cortexa7"
> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
> > -TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
> > -TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
> > -TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
> > -TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
> > +TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
> > +TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
> > +TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
> > +TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
> > --
> > 2.6.3
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [PATCHv2] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS
  2015-12-10 21:11   ` Khem Raj
@ 2015-12-18 13:15     ` Martin Jansa
  0 siblings, 0 replies; 31+ messages in thread
From: Martin Jansa @ 2015-12-18 13:15 UTC (permalink / raw)
  To: openembedded-core

* sometimes it's hard to see what's wrong here
* error message:
  Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (cortexa7t2hfhf-vfp-vfpv4-neon).
  doesn't help much to understand what exactly went wrong and where

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/classes/sanity.bbclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index ad9dda8..9f35558 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -329,6 +329,7 @@ def check_sanity_validmachine(sanity_data):
     # Check that we don't have duplicate entries in PACKAGE_ARCHS & that TUNE_PKGARCH is in PACKAGE_ARCHS
     pkgarchs = sanity_data.getVar('PACKAGE_ARCHS', True)
     tunepkg = sanity_data.getVar('TUNE_PKGARCH', True)
+    defaulttune = sanity_data.getVar('DEFAULTTUNE', True)
     tunefound = False
     seen = {}
     dups = []
@@ -345,7 +346,7 @@ def check_sanity_validmachine(sanity_data):
         messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)
 
     if tunefound == False:
-        messages = messages + "Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (%s)." % tunepkg
+        messages = messages + "Error, the PACKAGE_ARCHS variable (%s) for DEFAULTTUNE (%s) does not contain TUNE_PKGARCH (%s)." % (pkgarchs, defaulttune, tunepkg)
 
     return messages
 
-- 
2.6.4



^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18 13:13     ` Martin Jansa
@ 2015-12-18 20:08       ` Andre McCurdy
  2015-12-18 20:13         ` Martin Jansa
  0 siblings, 1 reply; 31+ messages in thread
From: Andre McCurdy @ 2015-12-18 20:08 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OE Core mailing list

On Fri, Dec 18, 2015 at 5:13 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
>> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
>> > * be aware that this -march value is available only in gcc-4.9 and
>> >   newer:
>> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
>> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
>> >   We either have to stop putting -march in default CCARGS or at
>> >   least set it compatible one like this patch does.
>>
>> Can we drop the concept of armv7ve without Thumb support?
>>
>> Thumb was optional for armv4 but from armv5 onwards every ARM core has
>> been able to support Thumb as well. Unfortunately the cpu tuning .inc
>> files in oe-core for armv5 and above just seem to have copied any
>> pasted from armv4 and so provide bogus non-thumb capable tuning
>> options, which just add a lot of unnecessary complexity (the only real
>> difference between them is that the thumb capable versions respect
>> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).
>>
>> To avoid breaking existing machine configs and package feeds, I guess
>> we might be stuck with the existing AVAILTUNES for armv7a and below,
>> but can we at least fix it for armv7ve ?
>
> Well even when the HW supports the thumb, some DISTROs tend to disable
> it for whatever reasons (e.g. you can use very low common denominator
> DEFAULTTUNE for many MACHINEs - which cannot be controlled by
> ARM_INSTRUCTION_SET only).

Could you explain a little more about that? Can't ARM_INSTRUCTION_SET
always be used to force ARM for cores which support both?

> What harm do you see from keeping tunes without Thumb? Only the
> maintenance of the tune file? That's not so bad because it's exact copy
> of arch-armv7a.inc with s/7a/7ve/g.
>
>> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
>> > ---
>> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141 +++++++++++++++++++++
>> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
>> >  meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
>> >  meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
>> >  4 files changed, 194 insertions(+), 52 deletions(-)
>> >  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
>> >
>> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> > new file mode 100644
>> > index 0000000..79e1ef6
>> > --- /dev/null
>> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> > @@ -0,0 +1,141 @@
>> > +DEFAULTTUNE ?= "armv7ve"
>> > +
>> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
>> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
>> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', ' -march=armv7ve', '', d)}"
>> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 'armv7ve:', '' ,d)}"
>> > +
>> > +require conf/machine/include/arm/arch-armv6.inc
>> > +require conf/machine/include/arm/feature-arm-neon.inc
>> > +
>> > +# Little Endian base configs
>> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16 armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon armv7ve-neon-vfpv4 armv7vet-neon-vfpv4"
>> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
>> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
>> > +TUNE_FEATURES_tune-armv7vet            = "${TUNE_FEATURES_tune-armv7ve} thumb"
>> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
>> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
>> > +TUNE_FEATURES_tune-armv7ve-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
>> > +TUNE_FEATURES_tune-armv7vet-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
>> > +TUNE_FEATURES_tune-armv7ve-neon        = "${TUNE_FEATURES_tune-armv7ve}  neon"
>> > +TUNE_FEATURES_tune-armv7vet-neon       = "${TUNE_FEATURES_tune-armv7vet} neon"
>> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
>> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             = "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp armv7vet2-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3 armv7vet2-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4 armv7vet2-neon-vfpv4"
>> > +
>> > +# HF Tunes
>> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16 armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-neon armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
>> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
>> > +TUNE_FEATURES_tune-armv7vehf             = "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vethf            = "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vehf-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vethf-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
>> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp armv7vet2hf-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16 armv7vet2hf-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3 armv7vet2hf-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4 armv7vet2hf-neon-vfpv4"
>> > +
>> > +# Big Endian
>> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16 armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
>> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
>> > +TUNE_FEATURES_tune-armv7veb             = "${TUNE_FEATURES_tune-armv7ve}             bigendian"
>> > +TUNE_FEATURES_tune-armv7vetb            = "${TUNE_FEATURES_tune-armv7vet}            bigendian"
>> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
>> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
>> > +TUNE_FEATURES_tune-armv7veb-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
>> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
>> > +TUNE_FEATURES_tune-armv7veb-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
>> > +TUNE_FEATURES_tune-armv7vetb-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
>> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
>> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16 armv7vet2b-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3 armv7vet2b-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4 armv7vet2b-neon-vfpv4"
>> > +
>> > +# Big Endian + HF
>> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16 armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3 armv7vehfb-neon armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
>> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
>> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
>> > +TUNE_FEATURES_tune-armv7vehfb             = "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
>> > +TUNE_FEATURES_tune-armv7vethfb            = "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
>> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
>> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
>> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       = "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
>> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      = "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
>> > +TUNE_FEATURES_tune-armv7vehfb-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
>> > +TUNE_FEATURES_tune-armv7vethfb-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
>> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
>> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp armv7vet2hfb-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16 armv7vet2hfb-vfpv3d16"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}  armv7vehfb-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3 armv7vet2hfb-vfpv3"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}  armv7vehfb-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4 armv7vet2hfb-neon-vfpv4"
>> > diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> > index 5632171..54c0cee 100644
>> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
>> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7a', 't2', '', d)}"
>> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r', 't2', '', d)}"
>> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7m', 't2', '', d)}"
>> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', 't2', '', d)}"
>> >
>> >  # If the device supports ARM, then respect ARM_THUMB_OPT (which can be "arm" or "thumb")
>> >  # If the defice doesn't support ARM, then always set "thumb" even when
>> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc b/meta/conf/machine/include/tune-cortexa15.inc
>> > index 8b34bb2..cfc8151 100644
>> > --- a/meta/conf/machine/include/tune-cortexa15.inc
>> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
>> > @@ -1,6 +1,6 @@
>> > -DEFAULTTUNE ?= "armv7a-neon"
>> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >
>> > -require conf/machine/include/arm/arch-armv7a.inc
>> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >
>> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor optimizations"
>> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', ' -mtune=cortex-a15', '', d)}"
>> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        = "cortexa15"
>> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
>> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
>> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7a}             cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7at}            cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
>> > +TUNE_FEATURES_tune-cortexa15             = "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp cortexa15-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
>> >
>> >  # HF Tunes
>> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
>> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
>> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
>> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
>> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
>> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp cortexa15hf-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
>> > +TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
>> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp cortexa15hf-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
>> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc b/meta/conf/machine/include/tune-cortexa7.inc
>> > index 4fea36f..84432bd 100644
>> > --- a/meta/conf/machine/include/tune-cortexa7.inc
>> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
>> > @@ -1,6 +1,6 @@
>> > -DEFAULTTUNE ?= "armv7a-neon"
>> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >
>> > -require conf/machine/include/arm/arch-armv7a.inc
>> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >
>> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor optimizations"
>> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', ' -mtune=cortex-a7', '', d)}"
>> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
>> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
>> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
>> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7a}             cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7at}            cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
>> > +TUNE_FEATURES_tune-cortexa7             = "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp cortexa7-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
>> >
>> >  # HF Tunes
>> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
>> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        = "cortexa7"
>> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
>> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
>> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
>> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
>> > +TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
>> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp cortexa7hf-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
>> > --
>> > 2.6.3
>> >
>> > --
>> > _______________________________________________
>> > Openembedded-core mailing list
>> > Openembedded-core@lists.openembedded.org
>> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
> --
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com


^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18 20:08       ` Andre McCurdy
@ 2015-12-18 20:13         ` Martin Jansa
  2015-12-18 20:29           ` Andre McCurdy
  0 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-18 20:13 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE Core mailing list

[-- Attachment #1: Type: text/plain, Size: 33552 bytes --]

I've meant that the DISTRO can enable thumb with ARM_INSTRUCTION_SET while
still using DEFAULTTUNE without thumb as common denominator for some group
of MACHINEs.

I'm not saying that it's common scenario and really has to be supported,
but having thumb-less tunes in armv7ve like we have in armv7a is IMHO worth
it at least for consistency sake between these 2.

On Fri, Dec 18, 2015 at 9:08 PM, Andre McCurdy <armccurdy@gmail.com> wrote:

> On Fri, Dec 18, 2015 at 5:13 AM, Martin Jansa <martin.jansa@gmail.com>
> wrote:
> > On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
> >> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa <martin.jansa@gmail.com>
> wrote:
> >> > * be aware that this -march value is available only in gcc-4.9 and
> >> >   newer:
> >> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
> >> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
> >> >   We either have to stop putting -march in default CCARGS or at
> >> >   least set it compatible one like this patch does.
> >>
> >> Can we drop the concept of armv7ve without Thumb support?
> >>
> >> Thumb was optional for armv4 but from armv5 onwards every ARM core has
> >> been able to support Thumb as well. Unfortunately the cpu tuning .inc
> >> files in oe-core for armv5 and above just seem to have copied any
> >> pasted from armv4 and so provide bogus non-thumb capable tuning
> >> options, which just add a lot of unnecessary complexity (the only real
> >> difference between them is that the thumb capable versions respect
> >> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).
> >>
> >> To avoid breaking existing machine configs and package feeds, I guess
> >> we might be stuck with the existing AVAILTUNES for armv7a and below,
> >> but can we at least fix it for armv7ve ?
> >
> > Well even when the HW supports the thumb, some DISTROs tend to disable
> > it for whatever reasons (e.g. you can use very low common denominator
> > DEFAULTTUNE for many MACHINEs - which cannot be controlled by
> > ARM_INSTRUCTION_SET only).
>
> Could you explain a little more about that? Can't ARM_INSTRUCTION_SET
> always be used to force ARM for cores which support both?
>
> > What harm do you see from keeping tunes without Thumb? Only the
> > maintenance of the tune file? That's not so bad because it's exact copy
> > of arch-armv7a.inc with s/7a/7ve/g.
> >
> >> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> >> > ---
> >> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141
> +++++++++++++++++++++
> >> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
> >> >  meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
> >> >  meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
> >> >  4 files changed, 194 insertions(+), 52 deletions(-)
> >> >  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >
> >> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc
> b/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> > new file mode 100644
> >> > index 0000000..79e1ef6
> >> > --- /dev/null
> >> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> > @@ -0,0 +1,141 @@
> >> > +DEFAULTTUNE ?= "armv7ve"
> >> > +
> >> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
> >> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
> >> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', '
> -march=armv7ve', '', d)}"
> >> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES',
> 'armv7ve', 'armv7ve:', '' ,d)}"
> >> > +
> >> > +require conf/machine/include/arm/arch-armv6.inc
> >> > +require conf/machine/include/arm/feature-arm-neon.inc
> >> > +
> >> > +# Little Endian base configs
> >> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16
> armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon armv7ve-neon-vfpv4
> armv7vet-neon-vfpv4"
> >> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
> >> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
> >> > +TUNE_FEATURES_tune-armv7vet            =
> "${TUNE_FEATURES_tune-armv7ve} thumb"
> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    =
> "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   =
> "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3       =
> "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3      =
> "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
> >> > +TUNE_FEATURES_tune-armv7ve-neon        =
> "${TUNE_FEATURES_tune-armv7ve}  neon"
> >> > +TUNE_FEATURES_tune-armv7vet-neon       =
> "${TUNE_FEATURES_tune-armv7vet} neon"
> >> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
> >> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp armv7vet2-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3
> armv7vet2-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4
> armv7vet2-neon-vfpv4"
> >> > +
> >> > +# HF Tunes
> >> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16
> armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-neon
> armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
> >> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
> >> > +TUNE_FEATURES_tune-armv7vehf             =
> "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vethf            =
> "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    =
> "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   =
> "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       =
> "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      =
> "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vehf-neon        =
> "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vethf-neon       =
> "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
> >> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp armv7vet2hf-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16
> armv7vet2hf-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3
> armv7vet2hf-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4
> armv7vet2hf-neon-vfpv4"
> >> > +
> >> > +# Big Endian
> >> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16
> armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon
> armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
> >> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
> >> > +TUNE_FEATURES_tune-armv7veb             =
> "${TUNE_FEATURES_tune-armv7ve}             bigendian"
> >> > +TUNE_FEATURES_tune-armv7vetb            =
> "${TUNE_FEATURES_tune-armv7vet}            bigendian"
> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    =
> "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   =
> "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3       =
> "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      =
> "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
> >> > +TUNE_FEATURES_tune-armv7veb-neon        =
> "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
> >> > +TUNE_FEATURES_tune-armv7vetb-neon       =
> "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
> >> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
> >> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16
> armv7vet2b-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3
> armv7vet2b-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4
> armv7vet2b-neon-vfpv4"
> >> > +
> >> > +# Big Endian + HF
> >> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16
> armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3 armv7vehfb-neon
> armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
> >> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
> >> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
> >> > +TUNE_FEATURES_tune-armv7vehfb             =
> "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
> >> > +TUNE_FEATURES_tune-armv7vethfb            =
> "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    =
> "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   =
> "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       =
> "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      =
> "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
> >> > +TUNE_FEATURES_tune-armv7vehfb-neon        =
> "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
> >> > +TUNE_FEATURES_tune-armv7vethfb-neon       =
> "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
> >> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
> >> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp armv7vet2hfb-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16
> armv7vet2hfb-vfpv3d16"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}  armv7vehfb-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3
> armv7vet2hfb-vfpv3"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}  armv7vehfb-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4
> armv7vet2hfb-neon-vfpv4"
> >> > diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> > index 5632171..54c0cee 100644
> >> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .=
> "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7a',
> 't2', '', d)}"
> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r',
> 't2', '', d)}"
> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7m',
> 't2', '', d)}"
> >> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> 'armv7ve', 't2', '', d)}"
> >> >
> >> >  # If the device supports ARM, then respect ARM_THUMB_OPT (which can
> be "arm" or "thumb")
> >> >  # If the defice doesn't support ARM, then always set "thumb" even
> when
> >> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc
> b/meta/conf/machine/include/tune-cortexa15.inc
> >> > index 8b34bb2..cfc8151 100644
> >> > --- a/meta/conf/machine/include/tune-cortexa15.inc
> >> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
> >> > @@ -1,6 +1,6 @@
> >> > -DEFAULTTUNE ?= "armv7a-neon"
> >> > +DEFAULTTUNE ?= "armv7ve-neon"
> >> >
> >> > -require conf/machine/include/arm/arch-armv7a.inc
> >> > +require conf/machine/include/arm/arch-armv7ve.inc
> >> >
> >> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor
> optimizations"
> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', '
> -mtune=cortex-a15', '', d)}"
> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        =
> "cortexa15"
> >> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
> >> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
> >> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15             =
> "${TUNE_FEATURES_tune-armv7a}             cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15t            =
> "${TUNE_FEATURES_tune-armv7at}            cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15-neon        =
> "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15t-neon       =
> "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon
> cortexa15t2-vfp cortexa15t2-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp
> cortexa15-neon cortexa15-neon-vfpv4"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp
> cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
> cortexa15t2-neon-vfpv4"
> >> > +TUNE_FEATURES_tune-cortexa15             =
> "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15t            =
> "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15-neon        =
> "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15t-neon       =
> "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp cortexa15-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp cortexa15-neon
> cortexa15t2-vfp cortexa15t2-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp
> cortexa15-neon cortexa15-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp
> cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
> cortexa15t2-neon-vfpv4"
> >> >
> >> >  # HF Tunes
> >> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon
> cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        =
> "cortexa15"
> >> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
> >> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
> >> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15hf             =
> "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15thf            =
> "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15hf-neon        =
> "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15thf-neon       =
> "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
> >> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp
> cortexa15hf-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp
> cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp
> cortexa15hf-neon cortexa15hf-neon-vfpv4"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp
> cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
> cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
> >> > +TUNE_FEATURES_tune-cortexa15hf             =
> "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15thf            =
> "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15hf-neon        =
> "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15thf-neon       =
> "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
> >> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp
> cortexa15hf-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp
> cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp
> cortexa15hf-neon cortexa15hf-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp
> cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
> cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
> >> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc
> b/meta/conf/machine/include/tune-cortexa7.inc
> >> > index 4fea36f..84432bd 100644
> >> > --- a/meta/conf/machine/include/tune-cortexa7.inc
> >> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
> >> > @@ -1,6 +1,6 @@
> >> > -DEFAULTTUNE ?= "armv7a-neon"
> >> > +DEFAULTTUNE ?= "armv7ve-neon"
> >> >
> >> > -require conf/machine/include/arm/arch-armv7a.inc
> >> > +require conf/machine/include/arm/arch-armv7ve.inc
> >> >
> >> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor
> optimizations"
> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', '
> -mtune=cortex-a7', '', d)}"
> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
> >> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
> >> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
> >> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7             =
> "${TUNE_FEATURES_tune-armv7a}             cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7t            =
> "${TUNE_FEATURES_tune-armv7at}            cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7-neon        =
> "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7t-neon       =
> "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon
> cortexa7t2-vfp cortexa7t2-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp cortexa7-neon
> cortexa7-neon-vfpv4"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp cortexa7-neon
> cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
> >> > +TUNE_FEATURES_tune-cortexa7             =
> "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7t            =
> "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7-neon        =
> "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7t-neon       =
> "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp cortexa7-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp cortexa7-neon
> cortexa7t2-vfp cortexa7t2-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp cortexa7-neon
> cortexa7-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon
> cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
> >> >
> >> >  # HF Tunes
> >> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon
> cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        =
> "cortexa7"
> >> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
> >> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
> >> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7hf             =
> "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7thf            =
> "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7hf-neon        =
> "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7thf-neon       =
> "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
> >> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon
> cortexa7t2hf-vfp cortexa7t2hf-neon"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp
> cortexa7hf-neon cortexa7hf-neon-vfpv4"
> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp
> cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon
> cortexa7t2hf-neon-vfpv4"
> >> > +TUNE_FEATURES_tune-cortexa7hf             =
> "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7thf            =
> "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7hf-neon        =
> "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7thf-neon       =
> "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
> "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
> >> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
> "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp cortexa7hf-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon
> cortexa7t2hf-vfp cortexa7t2hf-neon"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp
> cortexa7hf-neon cortexa7hf-neon-vfpv4"
> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
> "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp
> cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon
> cortexa7t2hf-neon-vfpv4"
> >> > --
> >> > 2.6.3
> >> >
> >> > --
> >> > _______________________________________________
> >> > Openembedded-core mailing list
> >> > Openembedded-core@lists.openembedded.org
> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >
> > --
> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>

[-- Attachment #2: Type: text/html, Size: 41613 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18 20:13         ` Martin Jansa
@ 2015-12-18 20:29           ` Andre McCurdy
  2015-12-18 20:45             ` Martin Jansa
  0 siblings, 1 reply; 31+ messages in thread
From: Andre McCurdy @ 2015-12-18 20:29 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OE Core mailing list

On Fri, Dec 18, 2015 at 12:13 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> I've meant that the DISTRO can enable thumb with ARM_INSTRUCTION_SET while
> still using DEFAULTTUNE without thumb as common denominator for some group
> of MACHINEs.

That seems like inverting the normal priority. Machines should let the
distro decide, not the other way around - so we should discourage that
situation, not try to support it!

> I'm not saying that it's common scenario and really has to be supported, but
> having thumb-less tunes in armv7ve like we have in armv7a is IMHO worth it
> at least for consistency sake between these 2.

Yes, maybe. Consistency is a good argument. My own preference would be
to remove the thumb-less tunes from armv7a too, but maybe that's too
radical...

> On Fri, Dec 18, 2015 at 9:08 PM, Andre McCurdy <armccurdy@gmail.com> wrote:
>>
>> On Fri, Dec 18, 2015 at 5:13 AM, Martin Jansa <martin.jansa@gmail.com>
>> wrote:
>> > On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
>> >> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa <martin.jansa@gmail.com>
>> >> wrote:
>> >> > * be aware that this -march value is available only in gcc-4.9 and
>> >> >   newer:
>> >> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
>> >> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
>> >> >   We either have to stop putting -march in default CCARGS or at
>> >> >   least set it compatible one like this patch does.
>> >>
>> >> Can we drop the concept of armv7ve without Thumb support?
>> >>
>> >> Thumb was optional for armv4 but from armv5 onwards every ARM core has
>> >> been able to support Thumb as well. Unfortunately the cpu tuning .inc
>> >> files in oe-core for armv5 and above just seem to have copied any
>> >> pasted from armv4 and so provide bogus non-thumb capable tuning
>> >> options, which just add a lot of unnecessary complexity (the only real
>> >> difference between them is that the thumb capable versions respect
>> >> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).
>> >>
>> >> To avoid breaking existing machine configs and package feeds, I guess
>> >> we might be stuck with the existing AVAILTUNES for armv7a and below,
>> >> but can we at least fix it for armv7ve ?
>> >
>> > Well even when the HW supports the thumb, some DISTROs tend to disable
>> > it for whatever reasons (e.g. you can use very low common denominator
>> > DEFAULTTUNE for many MACHINEs - which cannot be controlled by
>> > ARM_INSTRUCTION_SET only).
>>
>> Could you explain a little more about that? Can't ARM_INSTRUCTION_SET
>> always be used to force ARM for cores which support both?
>>
>> > What harm do you see from keeping tunes without Thumb? Only the
>> > maintenance of the tune file? That's not so bad because it's exact copy
>> > of arch-armv7a.inc with s/7a/7ve/g.
>> >
>> >> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
>> >> > ---
>> >> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141
>> >> > +++++++++++++++++++++
>> >> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
>> >> >  meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
>> >> >  meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
>> >> >  4 files changed, 194 insertions(+), 52 deletions(-)
>> >> >  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >
>> >> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> > b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> > new file mode 100644
>> >> > index 0000000..79e1ef6
>> >> > --- /dev/null
>> >> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> > @@ -0,0 +1,141 @@
>> >> > +DEFAULTTUNE ?= "armv7ve"
>> >> > +
>> >> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
>> >> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
>> >> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', '
>> >> > -march=armv7ve', '', d)}"
>> >> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES',
>> >> > 'armv7ve', 'armv7ve:', '' ,d)}"
>> >> > +
>> >> > +require conf/machine/include/arm/arch-armv6.inc
>> >> > +require conf/machine/include/arm/feature-arm-neon.inc
>> >> > +
>> >> > +# Little Endian base configs
>> >> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16
>> >> > armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon armv7ve-neon-vfpv4
>> >> > armv7vet-neon-vfpv4"
>> >> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
>> >> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
>> >> > +TUNE_FEATURES_tune-armv7vet            =
>> >> > "${TUNE_FEATURES_tune-armv7ve} thumb"
>> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    =
>> >> > "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
>> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   =
>> >> > "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
>> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3       =
>> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
>> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3      =
>> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
>> >> > +TUNE_FEATURES_tune-armv7ve-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7ve}  neon"
>> >> > +TUNE_FEATURES_tune-armv7vet-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vet} neon"
>> >> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
>> >> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp armv7vet2-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3
>> >> > armv7vet2-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4
>> >> > armv7vet2-neon-vfpv4"
>> >> > +
>> >> > +# HF Tunes
>> >> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16
>> >> > armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-neon
>> >> > armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
>> >> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
>> >> > +TUNE_FEATURES_tune-armv7vehf             =
>> >> > "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vethf            =
>> >> > "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    =
>> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   =
>> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       =
>> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      =
>> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vehf-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vethf-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
>> >> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp armv7vet2hf-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16
>> >> > armv7vet2hf-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3
>> >> > armv7vet2hf-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4
>> >> > armv7vet2hf-neon-vfpv4"
>> >> > +
>> >> > +# Big Endian
>> >> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16
>> >> > armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon
>> >> > armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
>> >> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
>> >> > +TUNE_FEATURES_tune-armv7veb             =
>> >> > "${TUNE_FEATURES_tune-armv7ve}             bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vetb            =
>> >> > "${TUNE_FEATURES_tune-armv7vet}            bigendian"
>> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    =
>> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   =
>> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
>> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3       =
>> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      =
>> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
>> >> > +TUNE_FEATURES_tune-armv7veb-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vetb-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
>> >> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16
>> >> > armv7vet2b-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3
>> >> > armv7vet2b-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4
>> >> > armv7vet2b-neon-vfpv4"
>> >> > +
>> >> > +# Big Endian + HF
>> >> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16
>> >> > armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3 armv7vehfb-neon
>> >> > armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
>> >> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
>> >> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
>> >> > +TUNE_FEATURES_tune-armv7vehfb             =
>> >> > "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vethfb            =
>> >> > "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vehfb-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vethfb-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
>> >> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp armv7vet2hfb-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16
>> >> > armv7vet2hfb-vfpv3d16"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}  armv7vehfb-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3
>> >> > armv7vet2hfb-vfpv3"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}  armv7vehfb-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4
>> >> > armv7vet2hfb-neon-vfpv4"
>> >> > diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> > b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> > index 5632171..54c0cee 100644
>> >> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .=
>> >> > "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
>> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7a',
>> >> > 't2', '', d)}"
>> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7r',
>> >> > 't2', '', d)}"
>> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7m',
>> >> > 't2', '', d)}"
>> >> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> > 'armv7ve', 't2', '', d)}"
>> >> >
>> >> >  # If the device supports ARM, then respect ARM_THUMB_OPT (which can
>> >> > be "arm" or "thumb")
>> >> >  # If the defice doesn't support ARM, then always set "thumb" even
>> >> > when
>> >> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc
>> >> > b/meta/conf/machine/include/tune-cortexa15.inc
>> >> > index 8b34bb2..cfc8151 100644
>> >> > --- a/meta/conf/machine/include/tune-cortexa15.inc
>> >> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
>> >> > @@ -1,6 +1,6 @@
>> >> > -DEFAULTTUNE ?= "armv7a-neon"
>> >> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >> >
>> >> > -require conf/machine/include/arm/arch-armv7a.inc
>> >> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >> >
>> >> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor
>> >> > optimizations"
>> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa15', '
>> >> > -mtune=cortex-a15', '', d)}"
>> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        =
>> >> > "cortexa15"
>> >> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
>> >> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
>> >> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15             =
>> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15t            =
>> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15t-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp cortexa15-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp cortexa15-neon
>> >> > cortexa15t2-vfp cortexa15t2-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp cortexa15-neon
>> >> > cortexa15-neon-vfpv4"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp cortexa15-neon
>> >> > cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
>> >> > cortexa15t2-neon-vfpv4"
>> >> > +TUNE_FEATURES_tune-cortexa15             =
>> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15t            =
>> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15t-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp cortexa15-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp cortexa15-neon
>> >> > cortexa15t2-vfp cortexa15t2-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp
>> >> > cortexa15-neon cortexa15-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp
>> >> > cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
>> >> > cortexa15t2-neon-vfpv4"
>> >> >
>> >> >  # HF Tunes
>> >> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon
>> >> > cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
>> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        =
>> >> > "cortexa15"
>> >> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
>> >> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
>> >> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15hf             =
>> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15thf            =
>> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15hf-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15thf-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
>> >> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp cortexa15t2hf-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp
>> >> > cortexa15hf-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp cortexa15hf-neon
>> >> > cortexa15t2hf-vfp cortexa15t2hf-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp
>> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp
>> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon
>> >> > cortexa15t2hf-neon-vfpv4"
>> >> > +TUNE_FEATURES_tune-cortexa15hf             =
>> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15thf            =
>> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15hf-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15thf-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
>> >> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp
>> >> > cortexa15hf-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp
>> >> > cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp
>> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp
>> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon
>> >> > cortexa15t2hf-neon-vfpv4"
>> >> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc
>> >> > b/meta/conf/machine/include/tune-cortexa7.inc
>> >> > index 4fea36f..84432bd 100644
>> >> > --- a/meta/conf/machine/include/tune-cortexa7.inc
>> >> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
>> >> > @@ -1,6 +1,6 @@
>> >> > -DEFAULTTUNE ?= "armv7a-neon"
>> >> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >> >
>> >> > -require conf/machine/include/arm/arch-armv7a.inc
>> >> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >> >
>> >> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor
>> >> > optimizations"
>> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7', '
>> >> > -mtune=cortex-a7', '', d)}"
>> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
>> >> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
>> >> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
>> >> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7             =
>> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7t            =
>> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7t-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp cortexa7-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp cortexa7-neon
>> >> > cortexa7t2-vfp cortexa7t2-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp cortexa7-neon
>> >> > cortexa7-neon-vfpv4"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp cortexa7-neon
>> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
>> >> > +TUNE_FEATURES_tune-cortexa7             =
>> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7t            =
>> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7t-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp cortexa7-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp cortexa7-neon
>> >> > cortexa7t2-vfp cortexa7t2-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp cortexa7-neon
>> >> > cortexa7-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon
>> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
>> >> >
>> >> >  # HF Tunes
>> >> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon
>> >> > cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
>> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        =
>> >> > "cortexa7"
>> >> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
>> >> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
>> >> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7hf             =
>> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7thf            =
>> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7hf-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7thf-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
>> >> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp cortexa7t2hf-vfp"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp cortexa7hf-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp cortexa7hf-neon
>> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp
>> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp
>> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon
>> >> > cortexa7t2hf-neon-vfpv4"
>> >> > +TUNE_FEATURES_tune-cortexa7hf             =
>> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7thf            =
>> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7hf-neon        =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7thf-neon       =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
>> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
>> >> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
>> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp cortexa7hf-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon
>> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp
>> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
>> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp
>> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon
>> >> > cortexa7t2hf-neon-vfpv4"
>> >> > --
>> >> > 2.6.3
>> >> >
>> >> > --
>> >> > _______________________________________________
>> >> > Openembedded-core mailing list
>> >> > Openembedded-core@lists.openembedded.org
>> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
>> >
>> > --
>> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>
>


^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18 20:29           ` Andre McCurdy
@ 2015-12-18 20:45             ` Martin Jansa
  2015-12-18 20:50               ` Andre McCurdy
  0 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-18 20:45 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE Core mailing list

[-- Attachment #1: Type: text/plain, Size: 37784 bytes --]

> Machines should let the distro decide, not the other way around

I agree, but that's IMHO argument for keeping thumb-less tunes available.

MACHINEs should define what they can support and DISTRO decides what
features they want to use for given MACHINE(s).

Dropping thumb-less tunes would indicate that MACHINE doesn't support arm
ISA, which isn't true for armv7ve (only cortexm3 is currently using that).



On Fri, Dec 18, 2015 at 9:29 PM, Andre McCurdy <armccurdy@gmail.com> wrote:

> On Fri, Dec 18, 2015 at 12:13 PM, Martin Jansa <martin.jansa@gmail.com>
> wrote:
> > I've meant that the DISTRO can enable thumb with ARM_INSTRUCTION_SET
> while
> > still using DEFAULTTUNE without thumb as common denominator for some
> group
> > of MACHINEs.
>
> That seems like inverting the normal priority. Machines should let the
> distro decide, not the other way around - so we should discourage that
> situation, not try to support it!
>
> > I'm not saying that it's common scenario and really has to be supported,
> but
> > having thumb-less tunes in armv7ve like we have in armv7a is IMHO worth
> it
> > at least for consistency sake between these 2.
>
> Yes, maybe. Consistency is a good argument. My own preference would be
> to remove the thumb-less tunes from armv7a too, but maybe that's too
> radical...
>
> > On Fri, Dec 18, 2015 at 9:08 PM, Andre McCurdy <armccurdy@gmail.com>
> wrote:
> >>
> >> On Fri, Dec 18, 2015 at 5:13 AM, Martin Jansa <martin.jansa@gmail.com>
> >> wrote:
> >> > On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
> >> >> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa <
> martin.jansa@gmail.com>
> >> >> wrote:
> >> >> > * be aware that this -march value is available only in gcc-4.9 and
> >> >> >   newer:
> >> >> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
> >> >> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
> >> >> >   We either have to stop putting -march in default CCARGS or at
> >> >> >   least set it compatible one like this patch does.
> >> >>
> >> >> Can we drop the concept of armv7ve without Thumb support?
> >> >>
> >> >> Thumb was optional for armv4 but from armv5 onwards every ARM core
> has
> >> >> been able to support Thumb as well. Unfortunately the cpu tuning .inc
> >> >> files in oe-core for armv5 and above just seem to have copied any
> >> >> pasted from armv4 and so provide bogus non-thumb capable tuning
> >> >> options, which just add a lot of unnecessary complexity (the only
> real
> >> >> difference between them is that the thumb capable versions respect
> >> >> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).
> >> >>
> >> >> To avoid breaking existing machine configs and package feeds, I guess
> >> >> we might be stuck with the existing AVAILTUNES for armv7a and below,
> >> >> but can we at least fix it for armv7ve ?
> >> >
> >> > Well even when the HW supports the thumb, some DISTROs tend to disable
> >> > it for whatever reasons (e.g. you can use very low common denominator
> >> > DEFAULTTUNE for many MACHINEs - which cannot be controlled by
> >> > ARM_INSTRUCTION_SET only).
> >>
> >> Could you explain a little more about that? Can't ARM_INSTRUCTION_SET
> >> always be used to force ARM for cores which support both?
> >>
> >> > What harm do you see from keeping tunes without Thumb? Only the
> >> > maintenance of the tune file? That's not so bad because it's exact
> copy
> >> > of arch-armv7a.inc with s/7a/7ve/g.
> >> >
> >> >> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> >> >> > ---
> >> >> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141
> >> >> > +++++++++++++++++++++
> >> >> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
> >> >> >  meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
> >> >> >  meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
> >> >> >  4 files changed, 194 insertions(+), 52 deletions(-)
> >> >> >  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> >
> >> >> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> > b/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> > new file mode 100644
> >> >> > index 0000000..79e1ef6
> >> >> > --- /dev/null
> >> >> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> > @@ -0,0 +1,141 @@
> >> >> > +DEFAULTTUNE ?= "armv7ve"
> >> >> > +
> >> >> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
> >> >> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
> >> >> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve', '
> >> >> > -march=armv7ve', '', d)}"
> >> >> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES',
> >> >> > 'armv7ve', 'armv7ve:', '' ,d)}"
> >> >> > +
> >> >> > +require conf/machine/include/arm/arch-armv6.inc
> >> >> > +require conf/machine/include/arm/feature-arm-neon.inc
> >> >> > +
> >> >> > +# Little Endian base configs
> >> >> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16
> >> >> > armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon
> armv7ve-neon-vfpv4
> >> >> > armv7vet-neon-vfpv4"
> >> >> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
> >> >> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
> >> >> > +TUNE_FEATURES_tune-armv7vet            =
> >> >> > "${TUNE_FEATURES_tune-armv7ve} thumb"
> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    =
> >> >> > "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   =
> >> >> > "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3       =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3      =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
> >> >> > +TUNE_FEATURES_tune-armv7ve-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7ve}  neon"
> >> >> > +TUNE_FEATURES_tune-armv7vet-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vet} neon"
> >> >> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
> >> >> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp
> armv7vet2-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16
> armv7vet2-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3
> >> >> > armv7vet2-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4
> >> >> > armv7vet2-neon-vfpv4"
> >> >> > +
> >> >> > +# HF Tunes
> >> >> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16
> >> >> > armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-neon
> >> >> > armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
> >> >> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
> >> >> > +TUNE_FEATURES_tune-armv7vehf             =
> >> >> > "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vethf            =
> >> >> > "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp
> armv7vet2hf-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16
> >> >> > armv7vet2hf-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3
> >> >> > armv7vet2hf-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon
> armv7vet2hf-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4
> >> >> > armv7vet2hf-neon-vfpv4"
> >> >> > +
> >> >> > +# Big Endian
> >> >> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16
> >> >> > armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon
> >> >> > armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
> >> >> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
> >> >> > +TUNE_FEATURES_tune-armv7veb             =
> >> >> > "${TUNE_FEATURES_tune-armv7ve}             bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vetb            =
> >> >> > "${TUNE_FEATURES_tune-armv7vet}            bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3       =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7veb-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16
> >> >> > armv7vet2b-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3
> >> >> > armv7vet2b-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon
> armv7vet2b-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4
> >> >> > armv7vet2b-neon-vfpv4"
> >> >> > +
> >> >> > +# Big Endian + HF
> >> >> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16
> >> >> > armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3
> armv7vehfb-neon
> >> >> > armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
> >> >> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
> >> >> > +TUNE_FEATURES_tune-armv7vehfb             =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vethfb            =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp
> armv7vet2hfb-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16
> >> >> > armv7vet2hfb-vfpv3d16"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}  armv7vehfb-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3
> >> >> > armv7vet2hfb-vfpv3"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon
> armv7vet2hfb-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}
> armv7vehfb-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4
> >> >> > armv7vet2hfb-neon-vfpv4"
> >> >> > diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> > b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> > index 5632171..54c0cee 100644
> >> >> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .=
> >> >> > "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> 'armv7a',
> >> >> > 't2', '', d)}"
> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> 'armv7r',
> >> >> > 't2', '', d)}"
> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> 'armv7m',
> >> >> > 't2', '', d)}"
> >> >> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> >> >> > 'armv7ve', 't2', '', d)}"
> >> >> >
> >> >> >  # If the device supports ARM, then respect ARM_THUMB_OPT (which
> can
> >> >> > be "arm" or "thumb")
> >> >> >  # If the defice doesn't support ARM, then always set "thumb" even
> >> >> > when
> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc
> >> >> > b/meta/conf/machine/include/tune-cortexa15.inc
> >> >> > index 8b34bb2..cfc8151 100644
> >> >> > --- a/meta/conf/machine/include/tune-cortexa15.inc
> >> >> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
> >> >> > @@ -1,6 +1,6 @@
> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
> >> >> >
> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
> >> >> >
> >> >> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor
> >> >> > optimizations"
> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
> 'cortexa15', '
> >> >> > -mtune=cortex-a15', '', d)}"
> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        =
> >> >> > "cortexa15"
> >> >> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
> >> >> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
> >> >> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15             =
> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15t            =
> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp cortexa15t2-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp
> cortexa15-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp
> cortexa15-neon
> >> >> > cortexa15t2-vfp cortexa15t2-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp
> cortexa15-neon
> >> >> > cortexa15-neon-vfpv4"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp
> cortexa15-neon
> >> >> > cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
> >> >> > cortexa15t2-neon-vfpv4"
> >> >> > +TUNE_FEATURES_tune-cortexa15             =
> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15t            =
> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp
> cortexa15t2-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp
> cortexa15-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp
> cortexa15-neon
> >> >> > cortexa15t2-vfp cortexa15t2-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp
> >> >> > cortexa15-neon cortexa15-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp
> >> >> > cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp
> cortexa15t2-neon
> >> >> > cortexa15t2-neon-vfpv4"
> >> >> >
> >> >> >  # HF Tunes
> >> >> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon
> >> >> > cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        =
> >> >> > "cortexa15"
> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
> >> >> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15hf             =
> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15thf            =
> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp
> cortexa15t2hf-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp
> >> >> > cortexa15hf-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp
> cortexa15hf-neon
> >> >> > cortexa15t2hf-vfp cortexa15t2hf-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp
> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp
> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
> cortexa15t2hf-neon
> >> >> > cortexa15t2hf-neon-vfpv4"
> >> >> > +TUNE_FEATURES_tune-cortexa15hf             =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15thf            =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp
> cortexa15t2hf-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp
> >> >> > cortexa15hf-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp
> >> >> > cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp
> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp
> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
> cortexa15t2hf-neon
> >> >> > cortexa15t2hf-neon-vfpv4"
> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc
> >> >> > b/meta/conf/machine/include/tune-cortexa7.inc
> >> >> > index 4fea36f..84432bd 100644
> >> >> > --- a/meta/conf/machine/include/tune-cortexa7.inc
> >> >> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
> >> >> > @@ -1,6 +1,6 @@
> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
> >> >> >
> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
> >> >> >
> >> >> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor
> >> >> > optimizations"
> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7',
> '
> >> >> > -mtune=cortex-a7', '', d)}"
> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        =
> "cortexa7"
> >> >> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
> >> >> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
> >> >> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7             =
> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7t            =
> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp
> cortexa7-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp
> cortexa7-neon
> >> >> > cortexa7t2-vfp cortexa7t2-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp
> cortexa7-neon
> >> >> > cortexa7-neon-vfpv4"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp
> cortexa7-neon
> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
> cortexa7t2-neon-vfpv4"
> >> >> > +TUNE_FEATURES_tune-cortexa7             =
> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7t            =
> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp
> cortexa7-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp
> cortexa7-neon
> >> >> > cortexa7t2-vfp cortexa7t2-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp
> cortexa7-neon
> >> >> > cortexa7-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp
> cortexa7-neon
> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
> cortexa7t2-neon-vfpv4"
> >> >> >
> >> >> >  # HF Tunes
> >> >> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon
> >> >> > cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        =
> >> >> > "cortexa7"
> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
> >> >> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7hf             =
> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7thf            =
> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp
> cortexa7t2hf-vfp"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp
> cortexa7hf-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp
> cortexa7hf-neon
> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp
> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp
> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
> cortexa7t2hf-neon
> >> >> > cortexa7t2hf-neon-vfpv4"
> >> >> > +TUNE_FEATURES_tune-cortexa7hf             =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7thf            =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon        =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon       =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp
> cortexa7t2hf-vfp"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp
> cortexa7hf-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp
> cortexa7hf-neon
> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp
> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp
> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
> cortexa7t2hf-neon
> >> >> > cortexa7t2hf-neon-vfpv4"
> >> >> > --
> >> >> > 2.6.3
> >> >> >
> >> >> > --
> >> >> > _______________________________________________
> >> >> > Openembedded-core mailing list
> >> >> > Openembedded-core@lists.openembedded.org
> >> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >> >
> >> > --
> >> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
> >
> >
>

[-- Attachment #2: Type: text/html, Size: 53392 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18 20:45             ` Martin Jansa
@ 2015-12-18 20:50               ` Andre McCurdy
  2015-12-18 20:57                 ` Martin Jansa
  0 siblings, 1 reply; 31+ messages in thread
From: Andre McCurdy @ 2015-12-18 20:50 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OE Core mailing list

On Fri, Dec 18, 2015 at 12:45 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
>> Machines should let the distro decide, not the other way around
>
> I agree, but that's IMHO argument for keeping thumb-less tunes available.
>
> MACHINEs should define what they can support and DISTRO decides what
> features they want to use for given MACHINE(s).
>
> Dropping thumb-less tunes would indicate that MACHINE doesn't support arm
> ISA, which isn't true for armv7ve (only cortexm3 is currently using that).

Huh? Dropping thumb-less tunes doesn't have any impact on whether or
not a MACHINE supports for ARM.

> On Fri, Dec 18, 2015 at 9:29 PM, Andre McCurdy <armccurdy@gmail.com> wrote:
>>
>> On Fri, Dec 18, 2015 at 12:13 PM, Martin Jansa <martin.jansa@gmail.com>
>> wrote:
>> > I've meant that the DISTRO can enable thumb with ARM_INSTRUCTION_SET
>> > while
>> > still using DEFAULTTUNE without thumb as common denominator for some
>> > group
>> > of MACHINEs.
>>
>> That seems like inverting the normal priority. Machines should let the
>> distro decide, not the other way around - so we should discourage that
>> situation, not try to support it!
>>
>> > I'm not saying that it's common scenario and really has to be supported,
>> > but
>> > having thumb-less tunes in armv7ve like we have in armv7a is IMHO worth
>> > it
>> > at least for consistency sake between these 2.
>>
>> Yes, maybe. Consistency is a good argument. My own preference would be
>> to remove the thumb-less tunes from armv7a too, but maybe that's too
>> radical...
>>
>> > On Fri, Dec 18, 2015 at 9:08 PM, Andre McCurdy <armccurdy@gmail.com>
>> > wrote:
>> >>
>> >> On Fri, Dec 18, 2015 at 5:13 AM, Martin Jansa <martin.jansa@gmail.com>
>> >> wrote:
>> >> > On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
>> >> >> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa
>> >> >> <martin.jansa@gmail.com>
>> >> >> wrote:
>> >> >> > * be aware that this -march value is available only in gcc-4.9 and
>> >> >> >   newer:
>> >> >> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
>> >> >> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
>> >> >> >   We either have to stop putting -march in default CCARGS or at
>> >> >> >   least set it compatible one like this patch does.
>> >> >>
>> >> >> Can we drop the concept of armv7ve without Thumb support?
>> >> >>
>> >> >> Thumb was optional for armv4 but from armv5 onwards every ARM core
>> >> >> has
>> >> >> been able to support Thumb as well. Unfortunately the cpu tuning
>> >> >> .inc
>> >> >> files in oe-core for armv5 and above just seem to have copied any
>> >> >> pasted from armv4 and so provide bogus non-thumb capable tuning
>> >> >> options, which just add a lot of unnecessary complexity (the only
>> >> >> real
>> >> >> difference between them is that the thumb capable versions respect
>> >> >> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).
>> >> >>
>> >> >> To avoid breaking existing machine configs and package feeds, I
>> >> >> guess
>> >> >> we might be stuck with the existing AVAILTUNES for armv7a and below,
>> >> >> but can we at least fix it for armv7ve ?
>> >> >
>> >> > Well even when the HW supports the thumb, some DISTROs tend to
>> >> > disable
>> >> > it for whatever reasons (e.g. you can use very low common denominator
>> >> > DEFAULTTUNE for many MACHINEs - which cannot be controlled by
>> >> > ARM_INSTRUCTION_SET only).
>> >>
>> >> Could you explain a little more about that? Can't ARM_INSTRUCTION_SET
>> >> always be used to force ARM for cores which support both?
>> >>
>> >> > What harm do you see from keeping tunes without Thumb? Only the
>> >> > maintenance of the tune file? That's not so bad because it's exact
>> >> > copy
>> >> > of arch-armv7a.inc with s/7a/7ve/g.
>> >> >
>> >> >> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
>> >> >> > ---
>> >> >> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141
>> >> >> > +++++++++++++++++++++
>> >> >> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
>> >> >> >  meta/conf/machine/include/tune-cortexa15.inc       |  52 ++++----
>> >> >> >  meta/conf/machine/include/tune-cortexa7.inc        |  52 ++++----
>> >> >> >  4 files changed, 194 insertions(+), 52 deletions(-)
>> >> >> >  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >
>> >> >> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> > b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> > new file mode 100644
>> >> >> > index 0000000..79e1ef6
>> >> >> > --- /dev/null
>> >> >> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> > @@ -0,0 +1,141 @@
>> >> >> > +DEFAULTTUNE ?= "armv7ve"
>> >> >> > +
>> >> >> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
>> >> >> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
>> >> >> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv7ve',
>> >> >> > '
>> >> >> > -march=armv7ve', '', d)}"
>> >> >> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> > 'armv7ve', 'armv7ve:', '' ,d)}"
>> >> >> > +
>> >> >> > +require conf/machine/include/arm/arch-armv6.inc
>> >> >> > +require conf/machine/include/arm/feature-arm-neon.inc
>> >> >> > +
>> >> >> > +# Little Endian base configs
>> >> >> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16
>> >> >> > armv7vet-vfpv3d16
>> >> >> > armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon
>> >> >> > armv7ve-neon-vfpv4
>> >> >> > armv7vet-neon-vfpv4"
>> >> >> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
>> >> >> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
>> >> >> > +TUNE_FEATURES_tune-armv7vet            =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve} thumb"
>> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
>> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
>> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3       =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
>> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3      =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
>> >> >> > +TUNE_FEATURES_tune-armv7ve-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve}  neon"
>> >> >> > +TUNE_FEATURES_tune-armv7vet-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet} neon"
>> >> >> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
>> >> >> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp
>> >> >> > armv7vet2-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16
>> >> >> > armv7vet2-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3
>> >> >> > armv7vet2-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4
>> >> >> > armv7vet2-neon-vfpv4"
>> >> >> > +
>> >> >> > +# HF Tunes
>> >> >> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16
>> >> >> > armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3
>> >> >> > armv7vehf-neon
>> >> >> > armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
>> >> >> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
>> >> >> > +TUNE_FEATURES_tune-armv7vehf             =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vethf            =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
>> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp
>> >> >> > armv7vet2hf-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16
>> >> >> > armv7vet2hf-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}  armv7vehf-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3
>> >> >> > armv7vet2hf-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon
>> >> >> > armv7vet2hf-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  armv7vehf-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4
>> >> >> > armv7vet2hf-neon-vfpv4"
>> >> >> > +
>> >> >> > +# Big Endian
>> >> >> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16
>> >> >> > armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon
>> >> >> > armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
>> >> >> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
>> >> >> > +TUNE_FEATURES_tune-armv7veb             =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve}             bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vetb            =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet}            bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3       =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7veb-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp armv7vet2b-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16
>> >> >> > armv7vet2b-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3
>> >> >> > armv7vet2b-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon
>> >> >> > armv7vet2b-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4
>> >> >> > armv7vet2b-neon-vfpv4"
>> >> >> > +
>> >> >> > +# Big Endian + HF
>> >> >> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16
>> >> >> > armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3
>> >> >> > armv7vehfb-neon
>> >> >> > armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
>> >> >> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
>> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
>> >> >> > +TUNE_FEATURES_tune-armv7vehfb             =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vethfb            =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
>> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp
>> >> >> > armv7vet2hfb-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16
>> >> >> > armv7vet2hfb-vfpv3d16"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}
>> >> >> > armv7vehfb-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3
>> >> >> > armv7vet2hfb-vfpv3"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon
>> >> >> > armv7vet2hfb-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}
>> >> >> > armv7vehfb-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon}
>> >> >> > armv7vehfb-neon-vfpv4
>> >> >> > armv7vet2hfb-neon-vfpv4"
>> >> >> > diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> > b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> > index 5632171..54c0cee 100644
>> >> >> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .=
>> >> >> > "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
>> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> > 'armv7a',
>> >> >> > 't2', '', d)}"
>> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> > 'armv7r',
>> >> >> > 't2', '', d)}"
>> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> > 'armv7m',
>> >> >> > 't2', '', d)}"
>> >> >> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> > 'armv7ve', 't2', '', d)}"
>> >> >> >
>> >> >> >  # If the device supports ARM, then respect ARM_THUMB_OPT (which
>> >> >> > can
>> >> >> > be "arm" or "thumb")
>> >> >> >  # If the defice doesn't support ARM, then always set "thumb" even
>> >> >> > when
>> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> > b/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> > index 8b34bb2..cfc8151 100644
>> >> >> > --- a/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> > @@ -1,6 +1,6 @@
>> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
>> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >> >> >
>> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
>> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >
>> >> >> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor
>> >> >> > optimizations"
>> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> > 'cortexa15', '
>> >> >> > -mtune=cortex-a15', '', d)}"
>> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        =
>> >> >> > "cortexa15"
>> >> >> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
>> >> >> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
>> >> >> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15             =
>> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15t            =
>> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp
>> >> >> > cortexa15t2-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp
>> >> >> > cortexa15-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp
>> >> >> > cortexa15-neon
>> >> >> > cortexa15t2-vfp cortexa15t2-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp
>> >> >> > cortexa15-neon
>> >> >> > cortexa15-neon-vfpv4"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp
>> >> >> > cortexa15-neon
>> >> >> > cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
>> >> >> > cortexa15t2-neon-vfpv4"
>> >> >> > +TUNE_FEATURES_tune-cortexa15             =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15t            =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp
>> >> >> > cortexa15t2-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp
>> >> >> > cortexa15-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp
>> >> >> > cortexa15-neon
>> >> >> > cortexa15t2-vfp cortexa15t2-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp
>> >> >> > cortexa15-neon cortexa15-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp
>> >> >> > cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp
>> >> >> > cortexa15t2-neon
>> >> >> > cortexa15t2-neon-vfpv4"
>> >> >> >
>> >> >> >  # HF Tunes
>> >> >> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon
>> >> >> > cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
>> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        =
>> >> >> > "cortexa15"
>> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
>> >> >> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
>> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15hf             =
>> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15thf            =
>> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
>> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp
>> >> >> > cortexa15t2hf-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp
>> >> >> > cortexa15hf-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp
>> >> >> > cortexa15hf-neon
>> >> >> > cortexa15t2hf-vfp cortexa15t2hf-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa15hf-vfp
>> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa15hf-vfp
>> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
>> >> >> > cortexa15t2hf-neon
>> >> >> > cortexa15t2hf-neon-vfpv4"
>> >> >> > +TUNE_FEATURES_tune-cortexa15hf             =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15thf            =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
>> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp
>> >> >> > cortexa15t2hf-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp
>> >> >> > cortexa15hf-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp
>> >> >> > cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa15hf-vfp
>> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp
>> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
>> >> >> > cortexa15t2hf-neon
>> >> >> > cortexa15t2hf-neon-vfpv4"
>> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> > b/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> > index 4fea36f..84432bd 100644
>> >> >> > --- a/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> > @@ -1,6 +1,6 @@
>> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
>> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >> >> >
>> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
>> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >
>> >> >> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor
>> >> >> > optimizations"
>> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa7',
>> >> >> > '
>> >> >> > -mtune=cortex-a7', '', d)}"
>> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        =
>> >> >> > "cortexa7"
>> >> >> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
>> >> >> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
>> >> >> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7             =
>> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7t            =
>> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp cortexa7t2-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp
>> >> >> > cortexa7-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp
>> >> >> > cortexa7-neon
>> >> >> > cortexa7t2-vfp cortexa7t2-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp
>> >> >> > cortexa7-neon
>> >> >> > cortexa7-neon-vfpv4"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp
>> >> >> > cortexa7-neon
>> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
>> >> >> > cortexa7t2-neon-vfpv4"
>> >> >> > +TUNE_FEATURES_tune-cortexa7             =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7t            =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp
>> >> >> > cortexa7-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp
>> >> >> > cortexa7-neon
>> >> >> > cortexa7t2-vfp cortexa7t2-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp
>> >> >> > cortexa7-neon
>> >> >> > cortexa7-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp
>> >> >> > cortexa7-neon
>> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
>> >> >> > cortexa7t2-neon-vfpv4"
>> >> >> >
>> >> >> >  # HF Tunes
>> >> >> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon
>> >> >> > cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
>> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        =
>> >> >> > "cortexa7"
>> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
>> >> >> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
>> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7hf             =
>> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7thf            =
>> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
>> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp
>> >> >> > cortexa7t2hf-vfp"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp
>> >> >> > cortexa7hf-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp
>> >> >> > cortexa7hf-neon
>> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp
>> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp
>> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
>> >> >> > cortexa7t2hf-neon
>> >> >> > cortexa7t2hf-neon-vfpv4"
>> >> >> > +TUNE_FEATURES_tune-cortexa7hf             =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7thf            =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon        =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon       =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
>> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
>> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
>> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp
>> >> >> > cortexa7t2hf-vfp"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp
>> >> >> > cortexa7hf-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp
>> >> >> > cortexa7hf-neon
>> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}  cortexa7hf-vfp
>> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
>> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp
>> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
>> >> >> > cortexa7t2hf-neon
>> >> >> > cortexa7t2hf-neon-vfpv4"
>> >> >> > --
>> >> >> > 2.6.3
>> >> >> >
>> >> >> > --
>> >> >> > _______________________________________________
>> >> >> > Openembedded-core mailing list
>> >> >> > Openembedded-core@lists.openembedded.org
>> >> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
>> >> >
>> >> > --
>> >> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>> >
>> >
>
>


^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18 20:50               ` Andre McCurdy
@ 2015-12-18 20:57                 ` Martin Jansa
  2015-12-18 21:18                   ` Andre McCurdy
  0 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-18 20:57 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE Core mailing list

[-- Attachment #1: Type: text/plain, Size: 40923 bytes --]

Sorry I've meant that you (DISTRO) cannot select it with DEFAULTTUNE. I
shouldn't mention cortexm3 which was only confusing...

On Fri, Dec 18, 2015 at 9:50 PM, Andre McCurdy <armccurdy@gmail.com> wrote:

> On Fri, Dec 18, 2015 at 12:45 PM, Martin Jansa <martin.jansa@gmail.com>
> wrote:
> >> Machines should let the distro decide, not the other way around
> >
> > I agree, but that's IMHO argument for keeping thumb-less tunes available.
> >
> > MACHINEs should define what they can support and DISTRO decides what
> > features they want to use for given MACHINE(s).
> >
> > Dropping thumb-less tunes would indicate that MACHINE doesn't support arm
> > ISA, which isn't true for armv7ve (only cortexm3 is currently using
> that).
>
> Huh? Dropping thumb-less tunes doesn't have any impact on whether or
> not a MACHINE supports for ARM.
>
> > On Fri, Dec 18, 2015 at 9:29 PM, Andre McCurdy <armccurdy@gmail.com>
> wrote:
> >>
> >> On Fri, Dec 18, 2015 at 12:13 PM, Martin Jansa <martin.jansa@gmail.com>
> >> wrote:
> >> > I've meant that the DISTRO can enable thumb with ARM_INSTRUCTION_SET
> >> > while
> >> > still using DEFAULTTUNE without thumb as common denominator for some
> >> > group
> >> > of MACHINEs.
> >>
> >> That seems like inverting the normal priority. Machines should let the
> >> distro decide, not the other way around - so we should discourage that
> >> situation, not try to support it!
> >>
> >> > I'm not saying that it's common scenario and really has to be
> supported,
> >> > but
> >> > having thumb-less tunes in armv7ve like we have in armv7a is IMHO
> worth
> >> > it
> >> > at least for consistency sake between these 2.
> >>
> >> Yes, maybe. Consistency is a good argument. My own preference would be
> >> to remove the thumb-less tunes from armv7a too, but maybe that's too
> >> radical...
> >>
> >> > On Fri, Dec 18, 2015 at 9:08 PM, Andre McCurdy <armccurdy@gmail.com>
> >> > wrote:
> >> >>
> >> >> On Fri, Dec 18, 2015 at 5:13 AM, Martin Jansa <
> martin.jansa@gmail.com>
> >> >> wrote:
> >> >> > On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
> >> >> >> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa
> >> >> >> <martin.jansa@gmail.com>
> >> >> >> wrote:
> >> >> >> > * be aware that this -march value is available only in gcc-4.9
> and
> >> >> >> >   newer:
> >> >> >> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
> >> >> >> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
> >> >> >> >   We either have to stop putting -march in default CCARGS or at
> >> >> >> >   least set it compatible one like this patch does.
> >> >> >>
> >> >> >> Can we drop the concept of armv7ve without Thumb support?
> >> >> >>
> >> >> >> Thumb was optional for armv4 but from armv5 onwards every ARM core
> >> >> >> has
> >> >> >> been able to support Thumb as well. Unfortunately the cpu tuning
> >> >> >> .inc
> >> >> >> files in oe-core for armv5 and above just seem to have copied any
> >> >> >> pasted from armv4 and so provide bogus non-thumb capable tuning
> >> >> >> options, which just add a lot of unnecessary complexity (the only
> >> >> >> real
> >> >> >> difference between them is that the thumb capable versions respect
> >> >> >> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore it).
> >> >> >>
> >> >> >> To avoid breaking existing machine configs and package feeds, I
> >> >> >> guess
> >> >> >> we might be stuck with the existing AVAILTUNES for armv7a and
> below,
> >> >> >> but can we at least fix it for armv7ve ?
> >> >> >
> >> >> > Well even when the HW supports the thumb, some DISTROs tend to
> >> >> > disable
> >> >> > it for whatever reasons (e.g. you can use very low common
> denominator
> >> >> > DEFAULTTUNE for many MACHINEs - which cannot be controlled by
> >> >> > ARM_INSTRUCTION_SET only).
> >> >>
> >> >> Could you explain a little more about that? Can't ARM_INSTRUCTION_SET
> >> >> always be used to force ARM for cores which support both?
> >> >>
> >> >> > What harm do you see from keeping tunes without Thumb? Only the
> >> >> > maintenance of the tune file? That's not so bad because it's exact
> >> >> > copy
> >> >> > of arch-armv7a.inc with s/7a/7ve/g.
> >> >> >
> >> >> >> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> >> >> >> > ---
> >> >> >> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141
> >> >> >> > +++++++++++++++++++++
> >> >> >> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
> >> >> >> >  meta/conf/machine/include/tune-cortexa15.inc       |  52
> ++++----
> >> >> >> >  meta/conf/machine/include/tune-cortexa7.inc        |  52
> ++++----
> >> >> >> >  4 files changed, 194 insertions(+), 52 deletions(-)
> >> >> >> >  create mode 100644
> meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> >> >
> >> >> >> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> >> > b/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> >> > new file mode 100644
> >> >> >> > index 0000000..79e1ef6
> >> >> >> > --- /dev/null
> >> >> >> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
> >> >> >> > @@ -0,0 +1,141 @@
> >> >> >> > +DEFAULTTUNE ?= "armv7ve"
> >> >> >> > +
> >> >> >> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
> >> >> >> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
> >> >> >> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
> 'armv7ve',
> >> >> >> > '
> >> >> >> > -march=armv7ve', '', d)}"
> >> >> >> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES',
> >> >> >> > 'armv7ve', 'armv7ve:', '' ,d)}"
> >> >> >> > +
> >> >> >> > +require conf/machine/include/arm/arch-armv6.inc
> >> >> >> > +require conf/machine/include/arm/feature-arm-neon.inc
> >> >> >> > +
> >> >> >> > +# Little Endian base configs
> >> >> >> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16
> >> >> >> > armv7vet-vfpv3d16
> >> >> >> > armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon
> >> >> >> > armv7ve-neon-vfpv4
> >> >> >> > armv7vet-neon-vfpv4"
> >> >> >> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
> >> >> >> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
> >> >> >> > +TUNE_FEATURES_tune-armv7vet            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve} thumb"
> >> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
> >> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
> >> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
> >> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3      =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
> >> >> >> > +TUNE_FEATURES_tune-armv7ve-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}  neon"
> >> >> >> > +TUNE_FEATURES_tune-armv7vet-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet} neon"
> >> >> >> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
> >> >> >> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp
> >> >> >> > armv7vet2-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16
> >> >> >> > armv7vet2-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3
> >> >> >> > armv7vet2-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon
> armv7vet2-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4
> >> >> >> > armv7vet2-neon-vfpv4"
> >> >> >> > +
> >> >> >> > +# HF Tunes
> >> >> >> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16
> >> >> >> > armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3
> >> >> >> > armv7vehf-neon
> >> >> >> > armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
> >> >> >> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehf             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethf            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp
> >> >> >> > armv7vet2hf-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16
> >> >> >> > armv7vet2hf-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}
> armv7vehf-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3
> >> >> >> > armv7vet2hf-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon
> >> >> >> > armv7vet2hf-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}
> armv7vehf-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon}
> armv7vehf-neon-vfpv4
> >> >> >> > armv7vet2hf-neon-vfpv4"
> >> >> >> > +
> >> >> >> > +# Big Endian
> >> >> >> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16
> >> >> >> > armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon
> >> >> >> > armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
> >> >> >> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
> >> >> >> > +TUNE_FEATURES_tune-armv7veb             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vetb            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7veb-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp
> armv7vet2b-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16
> >> >> >> > armv7vet2b-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3
> >> >> >> > armv7vet2b-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon
> >> >> >> > armv7vet2b-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}  armv7veb-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4
> >> >> >> > armv7vet2b-neon-vfpv4"
> >> >> >> > +
> >> >> >> > +# Big Endian + HF
> >> >> >> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16
> >> >> >> > armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3
> >> >> >> > armv7vehfb-neon
> >> >> >> > armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
> >> >> >> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp
> >> >> >> > armv7vet2hfb-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16
> >> >> >> > armv7vet2hfb-vfpv3d16"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}
> >> >> >> > armv7vehfb-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16}
> armv7vehfb-vfpv3
> >> >> >> > armv7vet2hfb-vfpv3"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon
> >> >> >> > armv7vet2hfb-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}
> >> >> >> > armv7vehfb-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon}
> >> >> >> > armv7vehfb-neon-vfpv4
> >> >> >> > armv7vet2hfb-neon-vfpv4"
> >> >> >> > diff --git a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> >> > b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> >> > index 5632171..54c0cee 100644
> >> >> >> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> >> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
> >> >> >> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .=
> >> >> >> > "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
> >> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> >> >> >> > 'armv7a',
> >> >> >> > 't2', '', d)}"
> >> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> >> >> >> > 'armv7r',
> >> >> >> > 't2', '', d)}"
> >> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> >> >> >> > 'armv7m',
> >> >> >> > 't2', '', d)}"
> >> >> >> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
> >> >> >> > 'armv7ve', 't2', '', d)}"
> >> >> >> >
> >> >> >> >  # If the device supports ARM, then respect ARM_THUMB_OPT (which
> >> >> >> > can
> >> >> >> > be "arm" or "thumb")
> >> >> >> >  # If the defice doesn't support ARM, then always set "thumb"
> even
> >> >> >> > when
> >> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc
> >> >> >> > b/meta/conf/machine/include/tune-cortexa15.inc
> >> >> >> > index 8b34bb2..cfc8151 100644
> >> >> >> > --- a/meta/conf/machine/include/tune-cortexa15.inc
> >> >> >> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
> >> >> >> > @@ -1,6 +1,6 @@
> >> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
> >> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
> >> >> >> >
> >> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
> >> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
> >> >> >> >
> >> >> >> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor
> >> >> >> > optimizations"
> >> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
> >> >> >> > 'cortexa15', '
> >> >> >> > -mtune=cortex-a15', '', d)}"
> >> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        =
> >> >> >> > "cortexa15"
> >> >> >> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
> >> >> >> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
> >> >> >> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15t            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp
> >> >> >> > cortexa15t2-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp
> >> >> >> > cortexa15-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp
> >> >> >> > cortexa15-neon
> >> >> >> > cortexa15t2-vfp cortexa15t2-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp
> >> >> >> > cortexa15-neon
> >> >> >> > cortexa15-neon-vfpv4"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp
> >> >> >> > cortexa15-neon
> >> >> >> > cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
> >> >> >> > cortexa15t2-neon-vfpv4"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15t            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp
> >> >> >> > cortexa15t2-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp
> >> >> >> > cortexa15-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp
> >> >> >> > cortexa15-neon
> >> >> >> > cortexa15t2-vfp cortexa15t2-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp
> >> >> >> > cortexa15-neon cortexa15-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp
> >> >> >> > cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp
> >> >> >> > cortexa15t2-neon
> >> >> >> > cortexa15t2-neon-vfpv4"
> >> >> >> >
> >> >> >> >  # HF Tunes
> >> >> >> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon
> >> >> >> > cortexa15thf-neon cortexa15hf-neon-vfpv4
> cortexa15thf-neon-vfpv4"
> >> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        =
> >> >> >> > "cortexa15"
> >> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
> >> >> >> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
> >> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15hf             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15thf            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
> >> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp
> >> >> >> > cortexa15t2hf-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon
> >> >> >> > cortexa15t2hf-vfp cortexa15t2hf-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}
> cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4}
> cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
> >> >> >> > cortexa15t2hf-neon
> >> >> >> > cortexa15t2hf-neon-vfpv4"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15hf             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15thf            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
> >> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp
> >> >> >> > cortexa15t2hf-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}
> cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4}
> cortexa15hf-vfp
> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
> >> >> >> > cortexa15t2hf-neon
> >> >> >> > cortexa15t2hf-neon-vfpv4"
> >> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc
> >> >> >> > b/meta/conf/machine/include/tune-cortexa7.inc
> >> >> >> > index 4fea36f..84432bd 100644
> >> >> >> > --- a/meta/conf/machine/include/tune-cortexa7.inc
> >> >> >> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
> >> >> >> > @@ -1,6 +1,6 @@
> >> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
> >> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
> >> >> >> >
> >> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
> >> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
> >> >> >> >
> >> >> >> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor
> >> >> >> > optimizations"
> >> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
> 'cortexa7',
> >> >> >> > '
> >> >> >> > -mtune=cortex-a7', '', d)}"
> >> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        =
> >> >> >> > "cortexa7"
> >> >> >> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
> >> >> >> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
> >> >> >> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7t            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp
> cortexa7t2-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp
> >> >> >> > cortexa7-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp
> >> >> >> > cortexa7-neon
> >> >> >> > cortexa7t2-vfp cortexa7t2-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp
> >> >> >> > cortexa7-neon
> >> >> >> > cortexa7-neon-vfpv4"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp
> >> >> >> > cortexa7-neon
> >> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
> >> >> >> > cortexa7t2-neon-vfpv4"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7t            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp
> cortexa7t2-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp
> >> >> >> > cortexa7-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp
> >> >> >> > cortexa7-neon
> >> >> >> > cortexa7t2-vfp cortexa7t2-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp
> >> >> >> > cortexa7-neon
> >> >> >> > cortexa7-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp
> >> >> >> > cortexa7-neon
> >> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
> >> >> >> > cortexa7t2-neon-vfpv4"
> >> >> >> >
> >> >> >> >  # HF Tunes
> >> >> >> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon
> >> >> >> > cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
> >> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        =
> >> >> >> > "cortexa7"
> >> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
> >> >> >> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
> >> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7hf             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7thf            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
> >> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp
> >> >> >> > cortexa7t2hf-vfp"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon
> >> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}  cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
> >> >> >> > cortexa7t2hf-neon
> >> >> >> > cortexa7t2hf-neon-vfpv4"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7hf             =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7thf            =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon        =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon       =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
> >> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp
> >> >> >> > cortexa7t2hf-vfp"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon
> >> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}
> cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4}
> cortexa7hf-vfp
> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
> >> >> >> > cortexa7t2hf-neon
> >> >> >> > cortexa7t2hf-neon-vfpv4"
> >> >> >> > --
> >> >> >> > 2.6.3
> >> >> >> >
> >> >> >> > --
> >> >> >> > _______________________________________________
> >> >> >> > Openembedded-core mailing list
> >> >> >> > Openembedded-core@lists.openembedded.org
> >> >> >> >
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >> >> >
> >> >> > --
> >> >> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
> >> >
> >> >
> >
> >
>

[-- Attachment #2: Type: text/html, Size: 61535 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15
  2015-12-18 20:57                 ` Martin Jansa
@ 2015-12-18 21:18                   ` Andre McCurdy
  0 siblings, 0 replies; 31+ messages in thread
From: Andre McCurdy @ 2015-12-18 21:18 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OE Core mailing list

  On Fri, Dec 18, 2015 at 12:57 PM, Martin Jansa <martin.jansa@gmail.com> wrote:
> Sorry I've meant that you (DISTRO) cannot select it with DEFAULTTUNE. I
> shouldn't mention cortexm3 which was only confusing...

I still don't really understand what you mean.

If a distro wants to set a default ARM_INSTRUCTION_SET for all
machines or for a particular group of machines, it should be able to
do so.

If we let machine configs decide to ignore ARM_INSTRUCTION_SET then
those machines will not work correctly for a distro which wants to
default to thumb.

> On Fri, Dec 18, 2015 at 9:50 PM, Andre McCurdy <armccurdy@gmail.com> wrote:
>>
>> On Fri, Dec 18, 2015 at 12:45 PM, Martin Jansa <martin.jansa@gmail.com>
>> wrote:
>> >> Machines should let the distro decide, not the other way around
>> >
>> > I agree, but that's IMHO argument for keeping thumb-less tunes
>> > available.
>> >
>> > MACHINEs should define what they can support and DISTRO decides what
>> > features they want to use for given MACHINE(s).
>> >
>> > Dropping thumb-less tunes would indicate that MACHINE doesn't support
>> > arm
>> > ISA, which isn't true for armv7ve (only cortexm3 is currently using
>> > that).
>>
>> Huh? Dropping thumb-less tunes doesn't have any impact on whether or
>> not a MACHINE supports for ARM.
>>
>> > On Fri, Dec 18, 2015 at 9:29 PM, Andre McCurdy <armccurdy@gmail.com>
>> > wrote:
>> >>
>> >> On Fri, Dec 18, 2015 at 12:13 PM, Martin Jansa <martin.jansa@gmail.com>
>> >> wrote:
>> >> > I've meant that the DISTRO can enable thumb with ARM_INSTRUCTION_SET
>> >> > while
>> >> > still using DEFAULTTUNE without thumb as common denominator for some
>> >> > group
>> >> > of MACHINEs.
>> >>
>> >> That seems like inverting the normal priority. Machines should let the
>> >> distro decide, not the other way around - so we should discourage that
>> >> situation, not try to support it!
>> >>
>> >> > I'm not saying that it's common scenario and really has to be
>> >> > supported,
>> >> > but
>> >> > having thumb-less tunes in armv7ve like we have in armv7a is IMHO
>> >> > worth
>> >> > it
>> >> > at least for consistency sake between these 2.
>> >>
>> >> Yes, maybe. Consistency is a good argument. My own preference would be
>> >> to remove the thumb-less tunes from armv7a too, but maybe that's too
>> >> radical...
>> >>
>> >> > On Fri, Dec 18, 2015 at 9:08 PM, Andre McCurdy <armccurdy@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> On Fri, Dec 18, 2015 at 5:13 AM, Martin Jansa
>> >> >> <martin.jansa@gmail.com>
>> >> >> wrote:
>> >> >> > On Thu, Dec 17, 2015 at 07:13:55PM -0800, Andre McCurdy wrote:
>> >> >> >> On Thu, Dec 10, 2015 at 5:48 AM, Martin Jansa
>> >> >> >> <martin.jansa@gmail.com>
>> >> >> >> wrote:
>> >> >> >> > * be aware that this -march value is available only in gcc-4.9
>> >> >> >> > and
>> >> >> >> >   newer:
>> >> >> >> >   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
>> >> >> >> > * -mcpu=cortex15 and -mcpu=cortexa7 conflict with -march=armv7a
>> >> >> >> >   We either have to stop putting -march in default CCARGS or at
>> >> >> >> >   least set it compatible one like this patch does.
>> >> >> >>
>> >> >> >> Can we drop the concept of armv7ve without Thumb support?
>> >> >> >>
>> >> >> >> Thumb was optional for armv4 but from armv5 onwards every ARM
>> >> >> >> core
>> >> >> >> has
>> >> >> >> been able to support Thumb as well. Unfortunately the cpu tuning
>> >> >> >> .inc
>> >> >> >> files in oe-core for armv5 and above just seem to have copied any
>> >> >> >> pasted from armv4 and so provide bogus non-thumb capable tuning
>> >> >> >> options, which just add a lot of unnecessary complexity (the only
>> >> >> >> real
>> >> >> >> difference between them is that the thumb capable versions
>> >> >> >> respect
>> >> >> >> ARM_INSTRUCTION_SET and the non-thumb capable versions ignore
>> >> >> >> it).
>> >> >> >>
>> >> >> >> To avoid breaking existing machine configs and package feeds, I
>> >> >> >> guess
>> >> >> >> we might be stuck with the existing AVAILTUNES for armv7a and
>> >> >> >> below,
>> >> >> >> but can we at least fix it for armv7ve ?
>> >> >> >
>> >> >> > Well even when the HW supports the thumb, some DISTROs tend to
>> >> >> > disable
>> >> >> > it for whatever reasons (e.g. you can use very low common
>> >> >> > denominator
>> >> >> > DEFAULTTUNE for many MACHINEs - which cannot be controlled by
>> >> >> > ARM_INSTRUCTION_SET only).
>> >> >>
>> >> >> Could you explain a little more about that? Can't
>> >> >> ARM_INSTRUCTION_SET
>> >> >> always be used to force ARM for cores which support both?
>> >> >>
>> >> >> > What harm do you see from keeping tunes without Thumb? Only the
>> >> >> > maintenance of the tune file? That's not so bad because it's exact
>> >> >> > copy
>> >> >> > of arch-armv7a.inc with s/7a/7ve/g.
>> >> >> >
>> >> >> >> > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
>> >> >> >> > ---
>> >> >> >> >  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141
>> >> >> >> > +++++++++++++++++++++
>> >> >> >> >  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
>> >> >> >> >  meta/conf/machine/include/tune-cortexa15.inc       |  52
>> >> >> >> > ++++----
>> >> >> >> >  meta/conf/machine/include/tune-cortexa7.inc        |  52
>> >> >> >> > ++++----
>> >> >> >> >  4 files changed, 194 insertions(+), 52 deletions(-)
>> >> >> >> >  create mode 100644
>> >> >> >> > meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >> >
>> >> >> >> > diff --git a/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >> > b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >> > new file mode 100644
>> >> >> >> > index 0000000..79e1ef6
>> >> >> >> > --- /dev/null
>> >> >> >> > +++ b/meta/conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >> > @@ -0,0 +1,141 @@
>> >> >> >> > +DEFAULTTUNE ?= "armv7ve"
>> >> >> >> > +
>> >> >> >> > +TUNEVALID[armv7ve] = "Enable instructions for ARMv7ve"
>> >> >> >> > +TUNECONFLICTS[armv7ve] = "armv4 armv5 armv6 armv7 armv7a"
>> >> >> >> > +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'armv7ve',
>> >> >> >> > '
>> >> >> >> > -march=armv7ve', '', d)}"
>> >> >> >> > +MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'armv7ve', 'armv7ve:', '' ,d)}"
>> >> >> >> > +
>> >> >> >> > +require conf/machine/include/arm/arch-armv6.inc
>> >> >> >> > +require conf/machine/include/arm/feature-arm-neon.inc
>> >> >> >> > +
>> >> >> >> > +# Little Endian base configs
>> >> >> >> > +AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16
>> >> >> >> > armv7vet-vfpv3d16
>> >> >> >> > armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-neon armv7vet-neon
>> >> >> >> > armv7ve-neon-vfpv4
>> >> >> >> > armv7vet-neon-vfpv4"
>> >> >> >> > +ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
>> >> >> >> > +TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vet            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve} thumb"
>> >> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3d16    =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}  vfpv3d16"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3d16   =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
>> >> >> >> > +TUNE_FEATURES_tune-armv7ve-vfpv3       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}  vfpv3"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vet-vfpv3      =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
>> >> >> >> > +TUNE_FEATURES_tune-armv7ve-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}  neon"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vet-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet} neon"
>> >> >> >> > +TUNE_FEATURES_tune-armv7ve-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}  vfpv4"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vet-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6}  armv7ve armv7ve-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7ve armv7ve-vfp
>> >> >> >> > armv7vet2-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16
>> >> >> >> > armv7vet2-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16}  armv7ve-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3
>> >> >> >> > armv7vet2-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon
>> >> >> >> > armv7vet2-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  armv7ve-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4
>> >> >> >> > armv7vet2-neon-vfpv4"
>> >> >> >> > +
>> >> >> >> > +# HF Tunes
>> >> >> >> > +AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16
>> >> >> >> > armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3
>> >> >> >> > armv7vehf-neon
>> >> >> >> > armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehf             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethf            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3d16    =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3d16   =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-vfpv3       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-vfpv3      =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  callconvention-hard"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hf}  armv7vehf-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7vehf-vfp
>> >> >> >> > armv7vet2hf-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16
>> >> >> >> > armv7vet2hf-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16}
>> >> >> >> > armv7vehf-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16}
>> >> >> >> > armv7vehf-vfpv3
>> >> >> >> > armv7vet2hf-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  armv7vehf-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon
>> >> >> >> > armv7vet2hf-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}
>> >> >> >> > armv7vehf-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon}
>> >> >> >> > armv7vehf-neon-vfpv4
>> >> >> >> > armv7vet2hf-neon-vfpv4"
>> >> >> >> > +
>> >> >> >> > +# Big Endian
>> >> >> >> > +AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16
>> >> >> >> > armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-neon
>> >> >> >> > armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
>> >> >> >> > +ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
>> >> >> >> > +TUNE_FEATURES_tune-armv7veb             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vetb            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3d16    =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3d16}    bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3d16   =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3d16}   bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7veb-vfpv3       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-vfpv3}       bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-vfpv3      =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-vfpv3}      bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7veb-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7veb-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6b}  armv7veb-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7veb-vfp
>> >> >> >> > armv7vet2b-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16
>> >> >> >> > armv7vet2b-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16}  armv7veb-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3
>> >> >> >> > armv7vet2b-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb}  armv7veb-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon
>> >> >> >> > armv7vet2b-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon}
>> >> >> >> > armv7veb-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4
>> >> >> >> > armv7vet2b-neon-vfpv4"
>> >> >> >> > +
>> >> >> >> > +# Big Endian + HF
>> >> >> >> > +AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16
>> >> >> >> > armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3
>> >> >> >> > armv7vehfb-neon
>> >> >> >> > armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
>> >> >> >> > +ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16}    bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16}   bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-vfpv3       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-vfpv3}       bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-vfpv3      =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-vfpv3}      bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  bigendian"
>> >> >> >> > +TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb}  armv7vehfb-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7vehfb-vfp
>> >> >> >> > armv7vet2hfb-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16
>> >> >> >> > armv7vet2hfb-vfpv3d16"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16}
>> >> >> >> > armv7vehfb-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16}
>> >> >> >> > armv7vehfb-vfpv3
>> >> >> >> > armv7vet2hfb-vfpv3"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb}  armv7vehfb-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon
>> >> >> >> > armv7vet2hfb-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon}
>> >> >> >> > armv7vehfb-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon}
>> >> >> >> > armv7vehfb-neon-vfpv4
>> >> >> >> > armv7vet2hfb-neon-vfpv4"
>> >> >> >> > diff --git
>> >> >> >> > a/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> >> > b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> >> > index 5632171..54c0cee 100644
>> >> >> >> > --- a/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> >> > +++ b/meta/conf/machine/include/arm/feature-arm-thumb.inc
>> >> >> >> > @@ -12,6 +12,7 @@ ARM_THUMB_SUFFIX .=
>> >> >> >> > "${@bb.utils.contains('TUNE_FEATURES', 'armv6',  't',  '', d
>> >> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'armv7a',
>> >> >> >> > 't2', '', d)}"
>> >> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'armv7r',
>> >> >> >> > 't2', '', d)}"
>> >> >> >> >  ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'armv7m',
>> >> >> >> > 't2', '', d)}"
>> >> >> >> > +ARM_THUMB_SUFFIX .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'armv7ve', 't2', '', d)}"
>> >> >> >> >
>> >> >> >> >  # If the device supports ARM, then respect ARM_THUMB_OPT
>> >> >> >> > (which
>> >> >> >> > can
>> >> >> >> > be "arm" or "thumb")
>> >> >> >> >  # If the defice doesn't support ARM, then always set "thumb"
>> >> >> >> > even
>> >> >> >> > when
>> >> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> >> > b/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> >> > index 8b34bb2..cfc8151 100644
>> >> >> >> > --- a/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> >> > +++ b/meta/conf/machine/include/tune-cortexa15.inc
>> >> >> >> > @@ -1,6 +1,6 @@
>> >> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
>> >> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >> >> >> >
>> >> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
>> >> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >> >
>> >> >> >> >  TUNEVALID[cortexa15] = "Enable Cortex-A15 specific processor
>> >> >> >> > optimizations"
>> >> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'cortexa15', '
>> >> >> >> > -mtune=cortex-a15', '', d)}"
>> >> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa15-neon        =
>> >> >> >> > "cortexa15"
>> >> >> >> >  ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
>> >> >> >> >  ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
>> >> >> >> >  ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15t            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa15"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa15-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa15-vfp
>> >> >> >> > cortexa15t2-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa15-vfp
>> >> >> >> > cortexa15-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa15-vfp
>> >> >> >> > cortexa15-neon
>> >> >> >> > cortexa15t2-vfp cortexa15t2-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa15-vfp
>> >> >> >> > cortexa15-neon
>> >> >> >> > cortexa15-neon-vfpv4"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa15-vfp
>> >> >> >> > cortexa15-neon
>> >> >> >> > cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon
>> >> >> >> > cortexa15t2-neon-vfpv4"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15t            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa15"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa15-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp
>> >> >> >> > cortexa15t2-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa15-vfp
>> >> >> >> > cortexa15-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp
>> >> >> >> > cortexa15-neon
>> >> >> >> > cortexa15t2-vfp cortexa15t2-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa15-vfp
>> >> >> >> > cortexa15-neon cortexa15-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp
>> >> >> >> > cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp
>> >> >> >> > cortexa15t2-neon
>> >> >> >> > cortexa15t2-neon-vfpv4"
>> >> >> >> >
>> >> >> >> >  # HF Tunes
>> >> >> >> >  AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon
>> >> >> >> > cortexa15thf-neon cortexa15hf-neon-vfpv4
>> >> >> >> > cortexa15thf-neon-vfpv4"
>> >> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa15hf-neon        =
>> >> >> >> > "cortexa15"
>> >> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
>> >> >> >> >  ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
>> >> >> >> >  ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15hf             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15thf            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa15"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa15"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa15hf-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa15hf-vfp
>> >> >> >> > cortexa15t2hf-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon
>> >> >> >> > cortexa15t2hf-vfp cortexa15t2hf-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}
>> >> >> >> > cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4}
>> >> >> >> > cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
>> >> >> >> > cortexa15t2hf-neon
>> >> >> >> > cortexa15t2hf-neon-vfpv4"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15hf             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15thf            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa15"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa15"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa15hf-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp
>> >> >> >> > cortexa15t2hf-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}
>> >> >> >> > cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4}
>> >> >> >> > cortexa15hf-vfp
>> >> >> >> > cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp
>> >> >> >> > cortexa15t2hf-neon
>> >> >> >> > cortexa15t2hf-neon-vfpv4"
>> >> >> >> > diff --git a/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> >> > b/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> >> > index 4fea36f..84432bd 100644
>> >> >> >> > --- a/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> >> > +++ b/meta/conf/machine/include/tune-cortexa7.inc
>> >> >> >> > @@ -1,6 +1,6 @@
>> >> >> >> > -DEFAULTTUNE ?= "armv7a-neon"
>> >> >> >> > +DEFAULTTUNE ?= "armv7ve-neon"
>> >> >> >> >
>> >> >> >> > -require conf/machine/include/arm/arch-armv7a.inc
>> >> >> >> > +require conf/machine/include/arm/arch-armv7ve.inc
>> >> >> >> >
>> >> >> >> >  TUNEVALID[cortexa7] = "Enable Cortex-A7 specific processor
>> >> >> >> > optimizations"
>> >> >> >> >  TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES',
>> >> >> >> > 'cortexa7',
>> >> >> >> > '
>> >> >> >> > -mtune=cortex-a7', '', d)}"
>> >> >> >> > @@ -13,18 +13,18 @@ ARMPKGARCH_tune-cortexa7-neon        =
>> >> >> >> > "cortexa7"
>> >> >> >> >  ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
>> >> >> >> >  ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
>> >> >> >> >  ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7a}             cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7t            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7at}            cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon}        cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon}       cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7a-neon-vfpv4}  cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} cortexa7"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a}  cortexa7-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa7-vfp
>> >> >> >> > cortexa7t2-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon}  cortexa7-vfp
>> >> >> >> > cortexa7-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa7-vfp
>> >> >> >> > cortexa7-neon
>> >> >> >> > cortexa7t2-vfp cortexa7t2-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4}  cortexa7-vfp
>> >> >> >> > cortexa7-neon
>> >> >> >> > cortexa7-neon-vfpv4"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa7-vfp
>> >> >> >> > cortexa7-neon
>> >> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
>> >> >> >> > cortexa7t2-neon-vfpv4"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve}             cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7t            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet}            cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon}        cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon}       cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4}  cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} cortexa7"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  cortexa7-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp
>> >> >> >> > cortexa7t2-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon}  cortexa7-vfp
>> >> >> >> > cortexa7-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp
>> >> >> >> > cortexa7-neon
>> >> >> >> > cortexa7t2-vfp cortexa7t2-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4}  cortexa7-vfp
>> >> >> >> > cortexa7-neon
>> >> >> >> > cortexa7-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp
>> >> >> >> > cortexa7-neon
>> >> >> >> > cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon
>> >> >> >> > cortexa7t2-neon-vfpv4"
>> >> >> >> >
>> >> >> >> >  # HF Tunes
>> >> >> >> >  AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon
>> >> >> >> > cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
>> >> >> >> > @@ -34,15 +34,15 @@ ARMPKGARCH_tune-cortexa7hf-neon        =
>> >> >> >> > "cortexa7"
>> >> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
>> >> >> >> >  ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
>> >> >> >> >  ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7hf             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf}             cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7thf            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7athf}            cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon}        cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon}       cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4}  cortexa7"
>> >> >> >> > -TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} cortexa7"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf}  cortexa7hf-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa7hf-vfp
>> >> >> >> > cortexa7t2hf-vfp"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon}  cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon
>> >> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4}
>> >> >> >> > cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> >> >> >> > -PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4}
>> >> >> >> > cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
>> >> >> >> > cortexa7t2hf-neon
>> >> >> >> > cortexa7t2hf-neon-vfpv4"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7hf             =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf}             cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7thf            =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf}            cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon        =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon}        cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon       =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon}       cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4}  cortexa7"
>> >> >> >> > +TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 =
>> >> >> >> > "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} cortexa7"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf}  cortexa7hf-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp
>> >> >> >> > cortexa7t2hf-vfp"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon}  cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon
>> >> >> >> > cortexa7t2hf-vfp cortexa7t2hf-neon"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4}
>> >> >> >> > cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4"
>> >> >> >> > +PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 =
>> >> >> >> > "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4}
>> >> >> >> > cortexa7hf-vfp
>> >> >> >> > cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp
>> >> >> >> > cortexa7t2hf-neon
>> >> >> >> > cortexa7t2hf-neon-vfpv4"
>> >> >> >> > --
>> >> >> >> > 2.6.3
>> >> >> >> >
>> >> >> >> > --
>> >> >> >> > _______________________________________________
>> >> >> >> > Openembedded-core mailing list
>> >> >> >> > Openembedded-core@lists.openembedded.org
>> >> >> >> >
>> >> >> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
>> >> >> >
>> >> >> > --
>> >> >> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>> >> >
>> >> >
>> >
>> >
>
>


^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 00/15] ARM tune fixes and improvements
  2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
                   ` (14 preceding siblings ...)
  2015-12-10 13:48 ` [PATCH][master][RESEND 15/15] tune-*: use mcpu instead of mtune for ARM tunes Martin Jansa
@ 2015-12-23 10:10 ` Martin Jansa
  2016-01-04 16:58   ` Burton, Ross
  15 siblings, 1 reply; 31+ messages in thread
From: Martin Jansa @ 2015-12-23 10:10 UTC (permalink / raw)
  To: Ross Burton, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 4180 bytes --]

On Thu, Dec 10, 2015 at 02:48:37PM +0100, Martin Jansa wrote:
> You can see the test script and results in various stages of this patch
> series in jansa/tune2-test branch:
> http://git.openembedded.org/openembedded-core-contrib/log/?h=jansa/tune2-test
> I'll add more test results here a bit later (running full test for all tunes again)
> 
> The following changes since commit 192da885e92d3b163b9c4e6b8151c9ecc6062b14:
> 
>   build-appliance-image: Update to master head revision (2015-12-09 08:49:13 +0000)
> 
> are available in the git repository at:
> 
>   git://git.openembedded.org/openembedded-core-contrib jansa/master-submitted
>   http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=jansa/master-submitted

Ping, I've rebased this again.

> Martin Jansa (15):
>   sanity.bbclass: add more information to error message about
>     TUNE_PKGARCH missing in PACKAGE_ARCHS
>   tune-cortexr4.inc: fix PACKAGE_EXTRA_ARCHS
>   arch-armv7a: add missing space before ?=
>   arch-armv7a, tune-cortexa*: improve comment VFP -> HF
>   arch-armv7a, tune-cortexa*: improve indentation
>   arm/arch-arm*, tune-cortexa*, tune-thunderx.inc,
>     powerpac/arch-powerpc64.inc: Use normal assignment
>   arch-armv[456]*.inc: improve indentation like armv7a
>   arch-armv5.inc: drop duplicate ARMPKGSFX_DSP and
>     PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp
>   arch-armv7a.inc: Fix PACKAGE_EXTRA_ARCHS for tune-armv7atb-vfpv3,
>     tune-armv7atb-vfpv3d16, cortexa7thf-neon-vfpv4
>   arch-armv7a.inc: add vfpv4 support also to softfp and big endiand
>     tunes
>   feature-arm-{neon,vfp}.inc: refactor and fix issues
>   feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT
>   cortexa{7,15,17}: add VFPv4 tunes
>   arch-armv7ve: add tune include for armv7ve and use it from cortexa7
>     and cortexa15
>   tune-*: use mcpu instead of mtune for ARM tunes
> 
>  meta/classes/sanity.bbclass                        |   3 +-
>  meta/conf/machine/include/arm/arch-arm.inc         |   3 +-
>  meta/conf/machine/include/arm/arch-arm64.inc       |   6 +-
>  meta/conf/machine/include/arm/arch-armv4.inc       |  16 +-
>  meta/conf/machine/include/arm/arch-armv5-dsp.inc   |  56 ++---
>  meta/conf/machine/include/arm/arch-armv5.inc       |  61 +++---
>  meta/conf/machine/include/arm/arch-armv6.inc       |  64 +++---
>  meta/conf/machine/include/arm/arch-armv7a.inc      | 230 +++++++++++----------
>  meta/conf/machine/include/arm/arch-armv7ve.inc     | 141 +++++++++++++
>  meta/conf/machine/include/arm/feature-arm-neon.inc |  19 +-
>  .../conf/machine/include/arm/feature-arm-thumb.inc |   1 +
>  meta/conf/machine/include/arm/feature-arm-vfp.inc  |  23 +--
>  .../machine/include/powerpc/arch-powerpc64.inc     |   2 +-
>  meta/conf/machine/include/tune-arm1136jf-s.inc     |   2 +-
>  meta/conf/machine/include/tune-arm920t.inc         |   2 +-
>  meta/conf/machine/include/tune-arm926ejs.inc       |   2 +-
>  meta/conf/machine/include/tune-arm9tdmi.inc        |   2 +-
>  meta/conf/machine/include/tune-cortexa15.inc       |  72 ++++---
>  meta/conf/machine/include/tune-cortexa17.inc       |  68 +++---
>  meta/conf/machine/include/tune-cortexa5.inc        |  52 ++---
>  meta/conf/machine/include/tune-cortexa7.inc        |  74 ++++---
>  meta/conf/machine/include/tune-cortexa8.inc        |  52 ++---
>  meta/conf/machine/include/tune-cortexa9.inc        |  52 ++---
>  meta/conf/machine/include/tune-cortexm1.inc        |   2 +-
>  meta/conf/machine/include/tune-cortexm3.inc        |   2 +-
>  meta/conf/machine/include/tune-cortexr4.inc        |   4 +-
>  meta/conf/machine/include/tune-ep9312.inc          |   2 +-
>  meta/conf/machine/include/tune-iwmmxt.inc          |   2 +-
>  meta/conf/machine/include/tune-strongarm1100.inc   |   2 +-
>  meta/conf/machine/include/tune-thunderx.inc        |   4 +-
>  meta/conf/machine/include/tune-xscale.inc          |   2 +-
>  31 files changed, 611 insertions(+), 412 deletions(-)
>  create mode 100644 meta/conf/machine/include/arm/arch-armv7ve.inc
> 
> -- 
> 2.6.3
> 

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

* Re: [PATCH][master][RESEND 00/15] ARM tune fixes and improvements
  2015-12-23 10:10 ` [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
@ 2016-01-04 16:58   ` Burton, Ross
  0 siblings, 0 replies; 31+ messages in thread
From: Burton, Ross @ 2016-01-04 16:58 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 174 bytes --]

On 23 December 2015 at 10:10, Martin Jansa <martin.jansa@gmail.com> wrote:

> Ping, I've rebased this again.
>

Merged to mut, will hit the AB with it tonight.

Ross

[-- Attachment #2: Type: text/html, Size: 656 bytes --]

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2016-01-04 16:59 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-10 13:48 [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 01/15] sanity.bbclass: add more information to error message about TUNE_PKGARCH missing in PACKAGE_ARCHS Martin Jansa
2015-12-10 21:11   ` Khem Raj
2015-12-18 13:15     ` [PATCHv2] " Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 02/15] tune-cortexr4.inc: fix PACKAGE_EXTRA_ARCHS Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 03/15] arch-armv7a: add missing space before ?= Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 04/15] arch-armv7a, tune-cortexa*: improve comment VFP -> HF Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 05/15] arch-armv7a, tune-cortexa*: improve indentation Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 06/15] arm/arch-arm*, tune-cortexa*, tune-thunderx.inc, powerpac/arch-powerpc64.inc: Use normal assignment Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 07/15] arch-armv[456]*.inc: improve indentation like armv7a Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 08/15] arch-armv5.inc: drop duplicate ARMPKGSFX_DSP and PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 09/15] arch-armv7a.inc: Fix PACKAGE_EXTRA_ARCHS for tune-armv7atb-vfpv3, tune-armv7atb-vfpv3d16, cortexa7thf-neon-vfpv4 Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 10/15] arch-armv7a.inc: add vfpv4 support also to softfp and big endiand tunes Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 11/15] feature-arm-{neon, vfp}.inc: refactor and fix issues Martin Jansa
2015-12-10 21:14   ` Khem Raj
2015-12-18 13:10     ` Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 12/15] feature-arm-vfp.inc: Further simplify with TUNE_CCARGS_MFLOAT Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 13/15] cortexa{7, 15, 17}: add VFPv4 tunes Martin Jansa
2015-12-10 13:48 ` [PATCH][master][RESEND 14/15] arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and cortexa15 Martin Jansa
2015-12-18  3:13   ` Andre McCurdy
2015-12-18 13:13     ` Martin Jansa
2015-12-18 20:08       ` Andre McCurdy
2015-12-18 20:13         ` Martin Jansa
2015-12-18 20:29           ` Andre McCurdy
2015-12-18 20:45             ` Martin Jansa
2015-12-18 20:50               ` Andre McCurdy
2015-12-18 20:57                 ` Martin Jansa
2015-12-18 21:18                   ` Andre McCurdy
2015-12-10 13:48 ` [PATCH][master][RESEND 15/15] tune-*: use mcpu instead of mtune for ARM tunes Martin Jansa
2015-12-23 10:10 ` [PATCH][master][RESEND 00/15] ARM tune fixes and improvements Martin Jansa
2016-01-04 16:58   ` Burton, Ross

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.