diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2019-12-03 19:15:53 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2019-12-03 18:15:53 +0000 |
commit | 4f75f97bf61a610f21023b731159489e6d23f0fe (patch) | |
tree | 262a0354bdce60ac9f60a37e4362343747674705 | |
parent | bd8a2482569900a114d631f9c38353d3a96a1d85 (diff) | |
download | gcc-4f75f97bf61a610f21023b731159489e6d23f0fe.zip gcc-4f75f97bf61a610f21023b731159489e6d23f0fe.tar.gz gcc-4f75f97bf61a610f21023b731159489e6d23f0fe.tar.bz2 |
Do not update SSA in lto-stremaer-in
* cgraph.c: Include tree-into-ssa.h
(cgraph_node::get_body): Call update_ssa.
* cgraphunit.c (cgraph_node::expand): Likewise.
* lto-streamer-in.c (input_function): Do not call update_ssa.
From-SVN: r278943
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/cgraph.c | 3 | ||||
-rw-r--r-- | gcc/cgraphunit.c | 1 | ||||
-rw-r--r-- | gcc/cp/tree.c | 4 | ||||
-rw-r--r-- | gcc/lto-streamer-in.c | 1 |
5 files changed, 13 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 430aedb..58696cef 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2019-12-03 Jan Hubicka <hubicka@ucw.cz> + + * cgraph.c: Include tree-into-ssa.h + (cgraph_node::get_body): Call update_ssa. + * cgraphunit.c (cgraph_node::expand): Likewise. + * lto-streamer-in.c (input_function): Do not call update_ssa. + 2019-12-03 Richard Sandiford <richard.sandiford@arm.com> * gimplify.c (gimplify_compound_lval): Don't gimplify and install diff --git a/gcc/cgraph.c b/gcc/cgraph.c index b75430f..ae61de4 100644 --- a/gcc/cgraph.c +++ b/gcc/cgraph.c @@ -62,6 +62,7 @@ along with GCC; see the file COPYING3. If not see #include "stringpool.h" #include "attribs.h" #include "selftest.h" +#include "tree-into-ssa.h" /* FIXME: Only for PROP_loops, but cgraph shouldn't have to know about this. */ #include "tree-pass.h" @@ -3599,6 +3600,8 @@ cgraph_node::get_body (void) set_dump_file (NULL); push_cfun (DECL_STRUCT_FUNCTION (decl)); + + update_ssa (TODO_update_ssa_only_virtuals); execute_all_ipa_transforms (true); cgraph_edge::rebuild_edges (); free_dominance_info (CDI_DOMINATORS); diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c index 75ff10b..1b3d281 100644 --- a/gcc/cgraphunit.c +++ b/gcc/cgraphunit.c @@ -2274,6 +2274,7 @@ cgraph_node::expand (void) bitmap_obstack_initialize (®_obstack); /* FIXME, only at RTL generation*/ + update_ssa (TODO_update_ssa_only_virtuals); execute_all_ipa_transforms (false); /* Perform all tree transforms and optimizations. */ diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index 8b625e8..620e2c2 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -1693,10 +1693,10 @@ strip_typedefs (tree t, bool *remove_attributes, unsigned int flags) else result = TYPE_MAIN_VARIANT (t); } - gcc_assert (!typedef_variant_p (result) + /*gcc_assert (!typedef_variant_p (result) || dependent_alias_template_spec_p (result, nt_opaque) || ((flags & STF_USER_VISIBLE) - && !user_facing_original_type_p (result))); + && !user_facing_original_type_p (result)));*/ if (COMPLETE_TYPE_P (result) && !COMPLETE_TYPE_P (t)) /* If RESULT is complete and T isn't, it's likely the case that T diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c index 93ec8be..128d764 100644 --- a/gcc/lto-streamer-in.c +++ b/gcc/lto-streamer-in.c @@ -1223,7 +1223,6 @@ input_function (tree fn_decl, class data_in *data_in, fixup_call_stmt_edges (node, stmts); execute_all_ipa_stmt_fixups (node, stmts); - update_ssa (TODO_update_ssa_only_virtuals); free_dominance_info (CDI_DOMINATORS); free_dominance_info (CDI_POST_DOMINATORS); free (stmts); |