summaryrefslogtreecommitdiffstats
path: root/meta/conf/machine/include/arm/feature-arm-neon.inc
Commit message (Collapse)AuthorAgeFilesLines
* arch-arm*: add better support for gcc march extensionsJon Mason2021-08-201-0/+5
| | | | | | | | | | | | | | | | | | GCC has the ability to pass extensions to the march parameter, which expand the funcationality of the march. For example "-march=armv7ve+simd" adds SIMD to ARMv7. Currently, there is no way to expand the march setting without modifying each instance, as you can't guarantee the ordering when using the existing TUNE_CCARGS. By introducing two new variables, TUNE_CCARGS_MARCH and TUNE_CCARGS_MARCH_OPT, we can enforce that these two go together. Also, expand existing and create new feature files that use these variables to expand the functionality. (From OE-Core rev: 794eb617bfd1997e7a3498812c63a20c58a10554) Signed-off-by: Jon Mason <jdmason@kudzu.us> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* arch-armv7*.inc: Add Cortex vfpv4-d16 supportPhil Edworthy2019-02-081-0/+3
| | | | | | | | | Some ARM Cortex devices have the VFPv4-D16, but no NEON. (From OE-Core rev: 594f8584268d5179c18512beada2bae4a21325de) Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* feature-arm-neon.inc: restore vfpv3-d16 supportAndré Draszik2016-05-111-1/+1
| | | | | | | | | | | | | | | | | | Commit 6661718 (feature-arm-{neon,vfp}.inc: refactor and fix issues) effectively changed the gcc -mfpu= option from -mfpu=vfpv3-d16 to -mfpu=vfpv3d16, which gcc doesn't understand. Restore the original value. After doing that, we also need to adjust ARMPKGSFX_FPU which should contain the same value without dash '-' as it is used that way throughout. (From OE-Core rev: 972b4fc459258572eeaad8af91e48ee9f0acade7) Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* feature-arm-{neon,vfp}.inc: refactor and fix issuesMartin Jansa2016-01-071-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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. (From OE-Core rev: 6661718158f8fdcdf63b0d48e8fe72d3ac4778f2) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta/conf/machine: use ' inside quoted valuesMartin Jansa2015-12-011-2/+2
| | | | | | | | (From OE-Core rev: 924ccf202a6d89de32fc34a140bf9e35e8e43b4e) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add Cortex A7 support for NEONv2 & FPv4Kristof Robot2014-02-021-2/+2
| | | | | | | | | | | | | | [YOCTO #5710] Add tuning options for Cortex-A7 with NEONv2 & FPv4: - cortexa7hf-neon-vfpv4 - cortexa7thf-neon-vfpv4 (From OE-Core rev: e97d152ca13556b41a236c1a4cfb11e77ff857d7) Signed-off-by: Kristof Robot <krirobo@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf/machine: use .= instead of += in TUNE_CCARGSMartin Jansa2013-04-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * number of TUNE_CCARGS conditionals is important if we add extra space with each one in "else" branch I'm building for 2 MACHINEs one is cortexa9, second is cortexa8 few months ago we added TUNE_CCARGS[vardepvalue] in bitbake.conf http://git.openembedded.org/openembedded-core/commit/?id=03f1e34ea3ce80931e9c3cd2ab22824f28a7233b which fixed some cases (like mentioned tune-xscale and tune-arm926ejs) where both had unused TUNE_CCARGS when common DEFAULTTUNE was used. with cortexa[89] it's different, because cortexa9 has one extra TUNE_CCARGS TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa9", "-mtune=cortex-a9", "", d)}" which adds extra *space* even when not used because of '+=' and as result: $ bitbake-diffsigs tmp-eglibc/sstate-diff/1366797730/*/armv7*/adapterbase/*do_configure* basehash changed from f986789fb8fb3579ed6a3492cc8a8d10 to c851b5f838d945ee13072e9ad6725dca Variable TUNE_CCARGS value changed from ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' to ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' Hash for dependent task gcc-runtime_4.7.bb.do_populate_sysroot changed from bdeabf7a86958b9110b566344b7916de to 2be5618e6bc8c57ec9db5659bf217915 Hash for dependent task eglibc_2.17.bb.do_populate_sysroot changed from b4f40fc62dde684acd0a574532a55360 to 97fcb426603d4a1c1099c0504d2ebf7d Hash for dependent task glib-2.0_2.34.3.bb.do_populate_sysroot changed from fd2f90b83098c34e88d649d70f6ea4f5 to ebd740bb94ea3eb0a914efda6fc82c4a (From OE-Core rev: b7430ff83760ac29079d20dc7c62f498a0a9d55d) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add ARM tune file overhaul based largely on work from Mark HatleRichard Purdie2011-07-271-0/+3
(From OE-Core rev: 789dcb8e68a2ab9784ac10ab36815010c61af2fc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>