m32r.c (m32r_attribute_identifier): New function.
authorNick Clifton <nickc@redhat.com>
Fri, 31 Jul 2015 15:55:16 +0000 (15:55 +0000)
committerNick Clifton <nickc@gcc.gnu.org>
Fri, 31 Jul 2015 15:55:16 +0000 (15:55 +0000)
* config/m32r/m32r.c (m32r_attribute_identifier): New function.
Returns true for __model__.
(TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.

From-SVN: r226445

gcc/ChangeLog
gcc/config/m32r/m32r.c

index daddd9aff2c5ef543b228d8e7add0e05e8c7b304..63d18edb3ba0825bf900d9357f6da21931a47c03 100644 (file)
@@ -1,3 +1,9 @@
+2015-07-31  Nick Clifton  <nickc@redhat.com>
+
+       * config/m32r/m32r.c (m32r_attribute_identifier): New function.
+       Returns true for __model__.
+       (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.
+
 2015-07-31  Alan Modra  <amodra@gmail.com>
 
        PR target/66870
index d126d2f70355b95ba354cb2f33dbb16ccca43cf8..341f24ab426f7f8644ae513fa045b0e9fdb5ea1d 100644 (file)
@@ -113,6 +113,7 @@ static bool m32r_can_eliminate (const int, const int);
 static void m32r_conditional_register_usage (void);
 static void m32r_trampoline_init (rtx, tree, rtx);
 static bool m32r_legitimate_constant_p (machine_mode, rtx);
+static bool m32r_attribute_identifier (const_tree);
 \f
 /* M32R specific attributes.  */
 
@@ -129,6 +130,8 @@ static const struct attribute_spec m32r_attribute_table[] =
 /* Initialize the GCC target structure.  */
 #undef  TARGET_ATTRIBUTE_TABLE
 #define TARGET_ATTRIBUTE_TABLE m32r_attribute_table
+#undef  TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P
+#define TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P m32r_attribute_identifier
 
 #undef TARGET_LEGITIMATE_ADDRESS_P
 #define TARGET_LEGITIMATE_ADDRESS_P m32r_legitimate_address_p
@@ -404,6 +407,13 @@ m32r_handle_model_attribute (tree *node ATTRIBUTE_UNUSED, tree name,
 
   return NULL_TREE;
 }
+
+static bool
+m32r_attribute_identifier (const_tree name)
+{
+  return strcmp (IDENTIFIER_POINTER (name), "model") == 0
+    ||   strcmp (IDENTIFIER_POINTER (name), "__model__") == 0;
+}
 \f
 /* Encode section information of DECL, which is either a VAR_DECL,
    FUNCTION_DECL, STRING_CST, CONSTRUCTOR, or ???.