Files
poky/meta/conf/machine/include/arm/arch-arm.inc
Jon Mason ff0ea5633a 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>
2021-08-20 08:53:03 +01:00

21 lines
840 B
PHP

TUNEVALID[bigendian] = "Enable big-endian mode."
ARMPKGARCH = "${ARMPKGARCH:tune-${DEFAULTTUNE}}"
ARMPKGSFX_ENDIAN = "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', 'b', '', d)}"
ARMPKGSFX_FPU ??= ""
ARMPKGSFX_DSP ??= ""
ARMPKGSFX_EABI ??= ""
ARMPKGSFX_THUMB ??= ""
TUNE_ARCH = "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', 'armeb', 'arm', d)}"
TUNE_PKGARCH = "${ARMPKGARCH}${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}"
ABIEXTENSION = "eabi"
TARGET_FPU = "${@d.getVar('TUNE_CCARGS_MFLOAT') or 'soft'}"
# Some -march settings need a +X option passed in. Since we cannot guarantee that any specified TUNE_CCARGS option is set in any order, we must hard code the order here to allow for it.
TUNE_CCARGS_MARCH_OPTS ??= ""
TUNE_CCARGS .= "${TUNE_CCARGS_MARCH}${TUNE_CCARGS_MARCH_OPTS}"