aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraphunit.c
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2015-01-09 11:33:00 +0100
committerMartin Liska <marxin@gcc.gnu.org>2015-01-09 10:33:00 +0000
commit3f9f4ae70554ee0f7b756fc1d811aefb6e70f076 (patch)
tree1c877e5ceb75376cc425d2d78971a217c753a79c /gcc/cgraphunit.c
parent56f6033d2bc75b90a1006b5245a8da338224506d (diff)
downloadgcc-3f9f4ae70554ee0f7b756fc1d811aefb6e70f076.zip
gcc-3f9f4ae70554ee0f7b756fc1d811aefb6e70f076.tar.gz
gcc-3f9f4ae70554ee0f7b756fc1d811aefb6e70f076.tar.bz2
IPA ICF: target and optimization flags comparison.
* cgraphunit.c (cgraph_node::create_wrapper): Fix level of indentation. * ipa-icf.c (sem_function::equals_private): Add support for target and (sem_item_optimizer::merge_classes): Remove redundant function optimization flags comparison. * tree.h (target_opts_for_fn): New function. * gcc.dg/ipa/ipa-icf-32.c: New test. From-SVN: r219377
Diffstat (limited to 'gcc/cgraphunit.c')
-rw-r--r--gcc/cgraphunit.c52
1 files changed, 26 insertions, 26 deletions
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index c8c8562..81246e2 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -2385,40 +2385,40 @@ cgraphunit_c_finalize (void)
void
cgraph_node::create_wrapper (cgraph_node *target)
{
- /* Preserve DECL_RESULT so we get right by reference flag. */
- tree decl_result = DECL_RESULT (decl);
+ /* Preserve DECL_RESULT so we get right by reference flag. */
+ tree decl_result = DECL_RESULT (decl);
- /* Remove the function's body but keep arguments to be reused
- for thunk. */
- release_body (true);
- reset ();
+ /* Remove the function's body but keep arguments to be reused
+ for thunk. */
+ release_body (true);
+ reset ();
- DECL_RESULT (decl) = decl_result;
- DECL_INITIAL (decl) = NULL;
- allocate_struct_function (decl, false);
- set_cfun (NULL);
+ DECL_RESULT (decl) = decl_result;
+ DECL_INITIAL (decl) = NULL;
+ allocate_struct_function (decl, false);
+ set_cfun (NULL);
- /* Turn alias into thunk and expand it into GIMPLE representation. */
- definition = true;
- thunk.thunk_p = true;
- thunk.this_adjusting = false;
+ /* Turn alias into thunk and expand it into GIMPLE representation. */
+ definition = true;
+ thunk.thunk_p = true;
+ thunk.this_adjusting = false;
- cgraph_edge *e = create_edge (target, NULL, 0, CGRAPH_FREQ_BASE);
+ cgraph_edge *e = create_edge (target, NULL, 0, CGRAPH_FREQ_BASE);
- tree arguments = DECL_ARGUMENTS (decl);
+ tree arguments = DECL_ARGUMENTS (decl);
- while (arguments)
- {
- TREE_ADDRESSABLE (arguments) = false;
- arguments = TREE_CHAIN (arguments);
- }
+ while (arguments)
+ {
+ TREE_ADDRESSABLE (arguments) = false;
+ arguments = TREE_CHAIN (arguments);
+ }
- expand_thunk (false, true);
- e->call_stmt_cannot_inline_p = true;
+ expand_thunk (false, true);
+ e->call_stmt_cannot_inline_p = true;
- /* Inline summary set-up. */
- analyze ();
- inline_analyze_function (this);
+ /* Inline summary set-up. */
+ analyze ();
+ inline_analyze_function (this);
}
#include "gt-cgraphunit.h"