+2002-06-19 Dhananjay R. Deshpande <dhananjayd@kpit.com>
+
+ * config/h8300/h8300.c (TARGET_INSERT_ATTRIBUTES): Define.
+ (h8300_insert_attributes): New.
+
2002-06-19 Akim Demaille <akim@epita.fr>
* c-parse.in (initelt: identifier ':' initval): Add an empty
static tree h8300_handle_tiny_data_attribute PARAMS ((tree *, tree, tree, int, bool *));
static void h8300_output_function_prologue PARAMS ((FILE *, HOST_WIDE_INT));
static void h8300_output_function_epilogue PARAMS ((FILE *, HOST_WIDE_INT));
+static void h8300_insert_attributes PARAMS ((tree, tree *));
#ifndef OBJECT_FORMAT_ELF
static void h8300_asm_named_section PARAMS ((const char *, unsigned int));
#endif
#undef TARGET_STRIP_NAME_ENCODING
#define TARGET_STRIP_NAME_ENCODING h8300_strip_name_encoding
+#undef TARGET_INSERT_ATTRIBUTES
+#define TARGET_INSERT_ATTRIBUTES h8300_insert_attributes
+
struct gcc_target targetm = TARGET_INITIALIZER;
\f
/* Initialize various cpu specific globals at start up. */
return a != NULL_TREE;
}
+/* Generate an 'interrupt_handler' attribute for decls. */
+
+static void
+h8300_insert_attributes (node, attributes)
+ tree node;
+ tree *attributes;
+{
+ if (!interrupt_handler
+ || TREE_CODE (node) != FUNCTION_DECL)
+ return;
+
+ /* Add an 'interrupt_handler' attribute. */
+ *attributes = tree_cons (get_identifier ("interrupt_handler"),
+ NULL, *attributes);
+}
+
/* Supported attributes:
interrupt_handler: output a prologue and epilogue suitable for an