ARM: Introduce ARM_DEFAULT_SHORT_ENUMS
authorSebastian Huber <sebastian.huber@embedded-brains.de>
Fri, 7 Apr 2017 07:02:07 +0000 (07:02 +0000)
committerSebastian Huber <sh@gcc.gnu.org>
Fri, 7 Apr 2017 07:02:07 +0000 (07:02 +0000)
Allow targets to define the default for the short enums option.

gcc/

* config/arm/arm.h (ARM_DEFAULT_SHORT_ENUMS): Provide default
definition.
* config/arm/arm.c (arm_default_short_enums): Use
ARM_DEFAULT_SHORT_ENUMS.
* config/arm/rtems.h (ARM_DEFAULT_SHORT_ENUMS): Define.

From-SVN: r246753

gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/arm.h
gcc/config/arm/rtems.h

index dc518ee559fda8985148f9dd409b3fec03d0cde7..4334fcfffff6244833fa06f57ac2b9e66c77158c 100644 (file)
@@ -1,3 +1,11 @@
+2017-04-07  Sebastian Huber  <sebastian.huber@embedded-brains.de>
+
+       * config/arm/arm.h (ARM_DEFAULT_SHORT_ENUMS): Provide default
+       definition.
+       * config/arm/arm.c (arm_default_short_enums): Use
+       ARM_DEFAULT_SHORT_ENUMS.
+       * config/arm/rtems.h (ARM_DEFAULT_SHORT_ENUMS): Define.
+
 2017-04-06  Jakub Jelinek  <jakub@redhat.com>
 
        PR debug/80234
index 931c72d46f58f623d38ca445abfc5b241a990a10..a9b61a339425d6df0d72dc4c87e4528fbd218eb3 100644 (file)
@@ -26549,12 +26549,11 @@ arm_promote_function_mode (const_tree type ATTRIBUTE_UNUSED,
   return mode;
 }
 
-/* AAPCS based ABIs use short enums by default.  */
 
 static bool
 arm_default_short_enums (void)
 {
-  return TARGET_AAPCS_BASED && arm_abi != ARM_ABI_AAPCS_LINUX;
+  return ARM_DEFAULT_SHORT_ENUMS;
 }
 
 
index 4dab73d37be8465fe6f504232e3ee83548beef95..275004af93893ca77e50705c01d24b00c03f206f 100644 (file)
@@ -343,6 +343,12 @@ extern int arm_fpu_attr;
 #define ARM_DEFAULT_ABI ARM_ABI_APCS
 #endif
 
+/* AAPCS based ABIs use short enums by default.  */
+#ifndef ARM_DEFAULT_SHORT_ENUMS
+#define ARM_DEFAULT_SHORT_ENUMS \
+  (TARGET_AAPCS_BASED && arm_abi != ARM_ABI_AAPCS_LINUX)
+#endif
+
 /* Map each of the micro-architecture variants to their corresponding
    major architecture revision.  */
 
index 53cd98795527c30800d6f20010d4d4281dc510ae..b34bbe8a06381a42c2d2d2f408b34b73a9c8f2b8 100644 (file)
@@ -27,3 +27,5 @@
        builtin_assert ("system=rtems");        \
        TARGET_BPABI_CPP_BUILTINS();            \
     } while (0)
+
+#define ARM_DEFAULT_SHORT_ENUMS false