aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2019-12-03 19:15:53 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2019-12-03 18:15:53 +0000
commit4f75f97bf61a610f21023b731159489e6d23f0fe (patch)
tree262a0354bdce60ac9f60a37e4362343747674705
parentbd8a2482569900a114d631f9c38353d3a96a1d85 (diff)
downloadgcc-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/ChangeLog7
-rw-r--r--gcc/cgraph.c3
-rw-r--r--gcc/cgraphunit.c1
-rw-r--r--gcc/cp/tree.c4
-rw-r--r--gcc/lto-streamer-in.c1
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 (&reg_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);