aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2011-06-12 20:08:52 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2011-06-12 18:08:52 +0000
commit516e076862fffecf065ed0aed62e98ef405ff601 (patch)
tree061b74b01dafa17d2b4db0cb28d11c1fcaf15eb3
parent903b0a8b6833a5b182461bc73d0f84423ae8c046 (diff)
downloadgcc-516e076862fffecf065ed0aed62e98ef405ff601.zip
gcc-516e076862fffecf065ed0aed62e98ef405ff601.tar.gz
gcc-516e076862fffecf065ed0aed62e98ef405ff601.tar.bz2
re PR middle-end/48836 (internal compiler error: in execute_todo, at passes.c:1261)
PR middle-end/48836 * ipa-inline-transform.c: Include tree-pass.h (inline_transform): Set TODO_update_ssa_only_virtuals. * Makefile.in (ipa-inline-transform.o): Add tree-pass.h. From-SVN: r174970
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/Makefile.in2
-rw-r--r--gcc/ipa-inline-transform.c3
3 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2bcc01b..2721e8e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2011-06-11 Jan Hubicka <jh@suse.cz>
+ PR middle-end/48836
+ * ipa-inline-transform.c: Include tree-pass.h
+ (inline_transform): Set TODO_update_ssa_only_virtuals.
+ * Makefile.in (ipa-inline-transform.o): Add tree-pass.h.
+
+2011-06-11 Jan Hubicka <jh@suse.cz>
+
PR middle-end/49378
* ipa.c (cgraph_non_local_node_p_1, cgraph_local_node_p): Rule out
aliases and thunks.
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 0d297c3..24d1615 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -3087,7 +3087,7 @@ ipa-inline-transform.o : ipa-inline-transform.c $(CONFIG_H) $(SYSTEM_H) coretype
$(TREE_H) langhooks.h $(TREE_INLINE_H) $(FLAGS_H) $(CGRAPH_H) intl.h \
$(DIAGNOSTIC_H) $(PARAMS_H) $(TIMEVAR_H) $(TREE_PASS_H) \
$(HASHTAB_H) $(COVERAGE_H) $(GGC_H) $(TREE_FLOW_H) $(IPA_PROP_H) \
- gimple-pretty-print.h ipa-inline.h $(LTO_STREAMER_H)
+ gimple-pretty-print.h ipa-inline.h $(LTO_STREAMER_H) tree-pass.h
ipa-utils.o : ipa-utils.c $(IPA_UTILS_H) $(CONFIG_H) $(SYSTEM_H) \
coretypes.h $(TM_H) $(TREE_H) $(TREE_FLOW_H) $(TREE_INLINE_H) langhooks.h \
pointer-set.h $(GGC_H) $(GIMPLE_H) $(SPLAY_TREE_H) \
diff --git a/gcc/ipa-inline-transform.c b/gcc/ipa-inline-transform.c
index b62e50b..e10e28e 100644
--- a/gcc/ipa-inline-transform.c
+++ b/gcc/ipa-inline-transform.c
@@ -45,6 +45,7 @@ along with GCC; see the file COPYING3. If not see
#include "ipa-prop.h"
#include "ipa-inline.h"
#include "tree-inline.h"
+#include "tree-pass.h"
int ncalls_inlined;
int nfunctions_inlined;
@@ -338,6 +339,8 @@ inline_transform (struct cgraph_node *node)
cgraph_redirect_edge_call_stmt_to_callee (e);
if (!e->inline_failed || warn_inline)
inline_p = true;
+ /* Redirecting edges might lead to a need for vops to be recomputed. */
+ todo |= TODO_update_ssa_only_virtuals;
}
if (inline_p)