Do not update SSA in lto-stremaer-in
authorJan Hubicka <hubicka@ucw.cz>
Tue, 3 Dec 2019 18:15:53 +0000 (19:15 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Tue, 3 Dec 2019 18:15:53 +0000 (18:15 +0000)
* 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

gcc/ChangeLog
gcc/cgraph.c
gcc/cgraphunit.c
gcc/cp/tree.c
gcc/lto-streamer-in.c

index 430aedbcb0527b1d3446774011f97dd6d00d570d..58696cefaac211aad72e5a71d2e214cf2b7ad69b 100644 (file)
@@ -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
index b75430f3f3aab759c5c9052b45ef6db0cd51aee1..ae61de4849eefb4e0da5870dddce9f0162ea400a 100644 (file)
@@ -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);
index 75ff10bc0cdbf32b4d734d48d2fa97f9d6c06b13..1b3d28121528123f5516314fe9c7923bbc5f4e2c 100644 (file)
@@ -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.  */
index 8b625e8b18e689ef2afd4c5ca5b1e543a07305f6..620e2c2699cb3a6de9de2b9dbcedfcc5783c06e4 100644 (file)
@@ -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
index 93ec8be535163fc61e7745d4f989c7e197c623e9..128d764072613b9a63660d3c01fc44b5ac7081fc 100644 (file)
@@ -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);