arch-armv6m.inc 803 B

12345678910111213141516171819
  1. # Tuning for ARMV6-m defined in ARM v6-M ArchitectureReference Manual
  2. # at https://static.docs.arm.com/ddi0419/d/DDI0419D_armv6m_arm.pdf
  3. DEFAULTTUNE ?= "armv6m"
  4. TUNEVALID[armv6m] = "Enable instructions for ARMv6-m"
  5. TUNECONFLICTS[armv6m] = "armv4 armv5 armv6 armv7a"
  6. # Use armv6s-m instead of armv6-m to avoid gcc bug "SVC is not permitted on this architecture".
  7. # SVC is a valid instruction.
  8. TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'armv6m', ' -march=armv6s-m', '', d)}"
  9. MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv6m', 'armv6m:', '', d)}"
  10. require conf/machine/include/arm/arch-armv5.inc
  11. # Little Endian
  12. AVAILTUNES += "armv6m"
  13. ARMPKGARCH_tune-armv6m = "armv6m"
  14. TUNE_FEATURES_tune-armv6m = "armv6m"
  15. PACKAGE_EXTRA_ARCHS_tune-armv6m = "armv6m"