[arm] PR target/85733 Restore be8 linking behaviour for ARMv6-M and products deriving...
authorRichard Earnshaw <rearnsha@arm.com>
Fri, 11 May 2018 13:29:41 +0000 (13:29 +0000)
committerRichard Earnshaw <rearnsha@gcc.gnu.org>
Fri, 11 May 2018 13:29:41 +0000 (13:29 +0000)
My patch last year to automate passing the be8 flag to the linker had
a nasty flaw in that I forgot entirely that the ARMv6-M architecture
did not derive its capabilities directly from the ARMv6 capability
list, but was a new group of capabilities (since it needs to leave out
the ARM -- notm -- feature bit).  The feature list defined was thus
missing the be8 bit.  Furthermore, any product derived from that
feature group consequently lacked the be8 feature as well and this
included all ARMv7 and ARMv8 parts.

The fix is embarrassingly simple...

PR target/85733
* config/arm/arm-cpus.in (fgroup ARMv6m): Add be8 feature.

From-SVN: r260162

gcc/ChangeLog
gcc/config/arm/arm-cpus.in

index aa93ad8f9633ac165b5887987f83c344de293f13..ae615068a73e0f5bda856ca5bd213fe0b2d6bc84 100644 (file)
@@ -1,3 +1,8 @@
+2018-05-11  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/85733
+       * config/arm/arm-cpus.in (fgroup ARMv6m): Add be8 feature.
+
 2018-05-11  Sebastian Peryt  <sebastian.peryt@intel.com>
 
        * common/config/i386/i386-common.c (OPTION_MASK_ISA_WAITPKG_SET,
index fce30e41af082445ce22cd0b25dac4d936d4d29d..96972a057e7459874ef0bdac5e6379fb666e4189 100644 (file)
@@ -234,7 +234,7 @@ define fgroup ARMv6zk     ARMv6k
 define fgroup ARMv6t2     ARMv6 thumb2
 # This is suspect.  ARMv6-m doesn't really pull in any useful features
 # from ARMv5* or ARMv6.
-define fgroup ARMv6m      mode32 armv3m armv4 thumb armv5 armv5e armv6
+define fgroup ARMv6m      mode32 armv3m armv4 thumb armv5 armv5e armv6 be8
 # This is suspect, the 'common' ARMv7 subset excludes the thumb2 'DSP' and
 # integer SIMD instructions that are in ARMv6T2.  */
 define fgroup ARMv7       ARMv6m thumb2 armv7