https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85606
--- Comment #2 from Richard Earnshaw <rearnsha at gcc dot gnu.org> --- Author: rearnsha Date: Fri May 11 09:28:10 2018 New Revision: 260157 URL: https://gcc.gnu.org/viewcvs?rev=260157&root=gcc&view=rev Log: [arm] PR target/85606 prefer armv6s-m for armv6-m parts When Arm introduced ARMv6-M there were two variants, ARMv6-M and ARMv6S-M. The two differed only in support for the SVC instruction. Later on SVC was then made a mandatory part of ARMv6-M and the ARMv6S-M name was dropped. GCC and GAS, however still recognize both names and at least some versions of GAS still distinguish between the two. To address this, this patch changes the architecture for the ARMv6-m cortex parts (m0, m0plus, m1 and the variants will small multiply units) to use the ARMv6S-M name in conjunction with the assembler. This avoids problems with them rejecting code that was previously accepted with older versions of GCC where we did not pass an explicit architecture string through to the compiler when using -mcpu on the command line. PR target/85606 * config/arm/arm-cpus.in: Add comment that ARMv6-m and ARMv6S-m are now equivalent. (cortex-m0): Use armv6s-m isa. (cortex-m0plus): Likewise. (cortex-m1): Likewise. (cortex-m0.small-multiply): Likewise. (cortex-m0plus.small-multiply): Likewise. (cortex-m1.small-multiply): Likewise. Modified: trunk/gcc/ChangeLog trunk/gcc/config/arm/arm-cpus.in