6df8f7e435
This commit adds the ARMv8.1-M M-Profile Vector Extension (MVE) configurations as well as the compiler flags to enable it. The M-Profile Vector Extension consists of the MVE-I and MVE-F instruction sets which are integer and floating-point vector instruction sets, respectively. The MVE-I instruction set is a superset of the ARM DSP instruction set (ARMv7E-M) and therefore depends on ARMV8_M_DSP, and the MVE-F instruction set is a superset of the ARM MVE-I instruction set and therefore depends on ARMV8_1_M_MVEI. The SoCs that implement the MVE instruction set should select the following configurations: select ARMV8_M_DSP select ARMV8_1_M_MVEI select ARMV8_1_M_MVEF (if floating-point MVE is supported) The GCC compiler flags for the MVE instruction set are specified through the `-mcpu` flag. In case of the Cortex-M55 (the only supported processor type for ARMv8.1-M at the time of writing), the `-mcpu=cortex-m55` flag, by default, enables all the supported extensions which are DSP, MVE-I and MVE-F. The extensions that are not supported can be specified by appending `+no(ext)` to the `-mcpu=cortex-m55` flag: -mcpu=cortex-m55 Cortex-M55 with DSP + MVE-I + MVE-F -mcpu=cortex-m55+nomve.fp Cortex-M55 with DSP + MVE-I -mcpu=cortex-m55+nomve Cortex-M55 with DSP -mcpu=cortex-m55+nodsp Cortex-M55 without any extensions Signed-off-by: Stephanos Ioannidis <root@stephanos.io> |
||
---|---|---|
.. | ||
core | ||
include | ||
CMakeLists.txt | ||
Kconfig |