aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-family
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2013-02-19 00:04:49 +0000
committerAldy Hernandez <aldyh@redhat.com>2013-02-19 00:04:49 +0000
commitc86ceb1245d8fd1853903f0b458be911646ded34 (patch)
tree7a29bd18e10dbd4f5b64765ae5b8f07a5bda81db /gcc/c-family
parent94742d6279fe69d853faee171faf9568914512d1 (diff)
PR target/52555
* genopinit.c (raw_optab_handler): Use this_fn_optabs. (swap_optab_enable): Same. (init_all_optabs): Use argument instead of global. * tree.h (struct tree_optimization_option): New field target_optabs. * expr.h (init_all_optabs): Add argument to prototype. (TREE_OPTIMIZATION_OPTABS): New. (save_optabs_if_changed): Protoize. * optabs.h: Declare this_fn_optabs. * optabs.c (save_optabs_if_changed): New. Declare this_fn_optabs. (init_optabs): Add argument to init_all_optabs() call. * function.c (invoke_set_current_function_hook): Handle per function optabs. * function.h (struct function): New field optabs. * config/mips/mips.c (mips_set_mips16_mode): Handle when optimization_current_node has changed. * target-globals.h (save_target_globals_default_opts): Protoize. * target-globals.c (save_target_globals_default_opts): New. c-family/ * c-common.c (handle_optimize_attribute): Call save_optabs_if_changed. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@196129 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-family')
-rw-r--r--gcc/c-family/ChangeLog6
-rw-r--r--gcc/c-family/c-common.c2
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 40b6e556956..afa9cd7a39a 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,9 @@
+2013-02-11 Aldy Hernandez <aldyh@redhat.com>
+
+ PR target/52555
+ * c-common.c (handle_optimize_attribute): Call
+ save_optabs_if_changed.
+
2013-02-18 Jakub Jelinek <jakub@redhat.com>
Steven Bosscher <steven@gcc.gnu.org>
diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c
index 1e6afaa77f2..a1d47a68045 100644
--- a/gcc/c-family/c-common.c
+++ b/gcc/c-family/c-common.c
@@ -8925,6 +8925,8 @@ handle_optimize_attribute (tree *node, tree name, tree args,
DECL_FUNCTION_SPECIFIC_OPTIMIZATION (*node)
= build_optimization_node ();
+ save_optabs_if_changed (*node);
+
/* Restore current options. */
cl_optimization_restore (&global_options, &cur_opts);
}