aboutsummaryrefslogtreecommitdiff
path: root/gcc/target.def
diff options
context:
space:
mode:
authorJozef Lawrynowicz <jozef.l@mittosystems.com>2019-09-03 20:36:49 +0000
committerJozef Lawrynowicz <jozefl@gcc.gnu.org>2019-09-03 20:36:49 +0000
commit7a4418a53e80d38918a1f7ca4b8c2050cde08a24 (patch)
tree50812e16fbb96679693af23f3880882336875f3a /gcc/target.def
parent52792faa0c8510b7bfc2c184c9f67d4a87f83215 (diff)
downloadgcc-7a4418a53e80d38918a1f7ca4b8c2050cde08a24.zip
gcc-7a4418a53e80d38918a1f7ca4b8c2050cde08a24.tar.gz
gcc-7a4418a53e80d38918a1f7ca4b8c2050cde08a24.tar.bz2
Implement TARGET_HANDLE_GENERIC_ATTRIBUTE
gcc/ChangeLog: 2019-09-03 Jozef Lawrynowicz <jozef.l@mittosystems.com> * config/msp430/msp430.c (TARGET_HANDLE_GENERIC_ATTRIBUTE): Define. (msp430_handle_generic_attribute): New function. * doc/tm.texi: Regenerate. * doc/tm.texi.in: Add TARGET_HANDLE_GENERIC_ATTRIBUTE. * hooks.c (hook_tree_treeptr_tree_tree_int_boolptr_null): New. * hooks.h (hook_tree_treeptr_tree_tree_int_boolptr_null): New. * target.def: Define new hook TARGET_HANDLE_GENERIC_ATTRIBUTE. gcc/c-family/ChangeLog: 2019-09-03 Jozef Lawrynowicz <jozef.l@mittosystems.com> * c-attribs.c (handle_section_attribute): Call the handle_generic_attribute target hook after performing target independent processing. (handle_noinit_attribute): Likewise. From-SVN: r275355
Diffstat (limited to 'gcc/target.def')
-rw-r--r--gcc/target.def11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/target.def b/gcc/target.def
index b2332d8..ca7e7ad 100644
--- a/gcc/target.def
+++ b/gcc/target.def
@@ -2208,6 +2208,17 @@ needed.",
void, (tree node, tree *attr_ptr),
hook_void_tree_treeptr)
+/* Perform additional target-specific processing of generic attributes. */
+DEFHOOK
+(handle_generic_attribute,
+ "Define this target hook if you want to be able to perform additional\n\
+target-specific processing of an attribute which is handled generically\n\
+by a front end. The arguments are the same as those which are passed to\n\
+attribute handlers. So far this only affects the @var{noinit} and\n\
+@var{section} attribute.",
+ tree, (tree *node, tree name, tree args, int flags, bool *no_add_attrs),
+ hook_tree_treeptr_tree_tree_int_boolptr_null)
+
/* Return true if FNDECL (which has at least one machine attribute)
can be inlined despite its machine attributes, false otherwise. */
DEFHOOK