diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-07-25 19:03:24 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-07-27 15:43:38 +0100 |
commit | 789dcb8e68a2ab9784ac10ab36815010c61af2fc (patch) | |
tree | e0930a7f1900bc907a2bd3e372d20512e4328fe3 /meta/conf/machine/include/arm/arch-armv7.inc | |
parent | c64d075b3d367e6c76aafa17782585d026b1f31e (diff) | |
download | openembedded-core-contrib-789dcb8e68a2ab9784ac10ab36815010c61af2fc.tar.gz |
Add ARM tune file overhaul based largely on work from Mark Hatle
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/conf/machine/include/arm/arch-armv7.inc')
-rw-r--r-- | meta/conf/machine/include/arm/arch-armv7.inc | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/meta/conf/machine/include/arm/arch-armv7.inc b/meta/conf/machine/include/arm/arch-armv7.inc new file mode 100644 index 0000000000..8bc8d1049b --- /dev/null +++ b/meta/conf/machine/include/arm/arch-armv7.inc @@ -0,0 +1,55 @@ +DEFAULTTUNE ?= "armv7" + +ARMPKGARCH ?= "armv7" + +TUNEVALID[armv7] = "Enable instructions for ARMv7" +TUNE_CONFLICTS[armv7] = "armv4 armv5 armv6" +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "armv7", "-march=armv7", "", d)}" + +require conf/machine/include/arm/arch-armv6.inc +require conf/machine/include/arm/feature-arm-neon.inc + +# Little Endian base configs +AVAILTUNES += "armv7 armv7t armv7-neon armv7t-neon" +TUNE_FEATURES_tune-armv7 ?= "armv7 vfp" +TUNE_FEATURES_tune-armv7t ?= "armv7 vfp thumb" +TUNE_FEATURES_tune-armv7-neon ?= "armv7 vfp neon" +TUNE_FEATURES_tune-armv7t-neon ?= "armv7 vfp neon thumb" +PACKAGE_EXTRA_ARCHS_tune-armv7 = "${PACKAGE_EXTRA_ARCHS_tune-armv6} armv7-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7t = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7-vfp armv7t2-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7-vfp-neon armv7at2-vfp-neon" + +# VFP Tunes +AVAILTUNES += "armv7hf armv7thf armv7hf-neon armv7thf-neon +TUNE_FEATURES_tune-armv7hf ?= "${TUNE_FEATURES_tune-armv7} callconvention-hard" +TUNE_FEATURES_tune-armv7thf ?= "${TUNE_FEATURES_tune-armv7t} callconvention-hard" +TUNE_FEATURES_tune-armv7hf-neon ?= "${TUNE_FEATURES_tune-armv7-neon} callconvention-hard" +TUNE_FEATURES_tune-armv7thf-neon ?= "${TUNE_FEATURES_tune_armv7t-neon} callconvention-hard" +PACKAGE_EXTRA_ARCHS_tune-armv7hf = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf} armv7hf-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7thf = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7hf-vfp armv7t2hf-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7hf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7hf} armv7hf-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7thf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7thf} armv7hf-vfp-neon armv7at2hf-vfp-neon" + +# Big Endian +AVAILTUNES += "armv7b armv7tb armv7b-neon armv7tb-neon" +TUNE_FEATURES_tune-armv7b ?= "${TUNE_FEATURES_tune-armv7} bigendian" +TUNE_FEATURES_tune-armv7tb ?= "${TUNE_FEATURES_tune-armv7t} bigendian" +TUNE_FEATURES_tune-armv7b-neon ?= "${TUNE_FEATURES_tune-armv7-neon} bigendian" +TUNE_FEATURES_tune-armv7tb-neon ?= "${TUNE_FEATURES_tune-armv7t-neon} bigendian" +PACKAGE_EXTRA_ARCHS_tune-armv7b = "${PACKAGE_EXTRA_ARCHS_tune-armv6} armv7b-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7tb = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7b-vfp armv7t2b-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7b-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7} armv7b-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7tb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7t} armv7b-vfp-neon armv7at2b-vfp-neon" + +# Big Endian + VFP +AVAILTUNES += "armv7hfb armv7thfb armv7hfb-neon armv7thfb-neon" +TUNE_FEATURES_tune-armv7hfb ?= "${TUNE_FEATURES_tune-armv7b} callconvention-hard" +TUNE_FEATURES_tune-armv7thfb ?= "${TUNE_FEATURES_tune-armv7tb} callconvention-hard" +TUNE_FEATURES_tune-armv7hfb-neon ?= "${TUNE_FEATURES_tune-armv7b-neon} callconvention-hard" +TUNE_FEATURES_tune-armv7thfb-neon ?= "${TUNE_FEATURES_tune_armv7tb-neon} callconvention-hard" +PACKAGE_EXTRA_ARCHS_tune-armv7hfb = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb} armv7hfb-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7thfb = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7hfb-vfp armv7t2hfb-vfp" +PACKAGE_EXTRA_ARCHS_tune-armv7hfb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7hfb} armv7hfb-vfp-neon" +PACKAGE_EXTRA_ARCHS_tune-armv7thfb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7thfb} armv7hfb-vfp-neon armv7at2hfb-vfp-neon" + |