mirror of
https://git.yoctoproject.org/poky
synced 2026-06-02 01:19:52 +00:00
arch-arm*: add better support for gcc march extensions
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>
This commit is contained in:
committed by
Richard Purdie
parent
a3c1be72af
commit
ff0ea5633a
@@ -1,14 +1,12 @@
|
||||
DEFAULTTUNE ?= "armv8a-crc"
|
||||
|
||||
TUNEVALID[armv8a] = "Enable instructions for ARMv8-a"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8a', ' -march=armv8-a', '', d)}"
|
||||
TUNEVALID[crc] = "Enable instructions for ARMv8-a Cyclic Redundancy Check (CRC)"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'crc', '+crc', '', d)}"
|
||||
TUNEVALID[crypto] = "Enable instructions for ARMv8-a cryptographic"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'crypto', '+crypto', '', d)}"
|
||||
TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8a', ' -march=armv8-a', '', d)}"
|
||||
MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv8a', 'armv8a:', '', d)}"
|
||||
|
||||
require conf/machine/include/arm/arch-arm64.inc
|
||||
require conf/machine/include/arm/feature-arm-crc.inc
|
||||
require conf/machine/include/arm/feature-arm-crypto.inc
|
||||
|
||||
# Little Endian base configs
|
||||
AVAILTUNES += "armv8a armv8a-crc armv8a-crc-crypto armv8a-crypto"
|
||||
|
||||
Reference in New Issue
Block a user