summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2011-06-12 18:08:52 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2011-06-12 18:08:52 +0000
commit77486e4a3bdfe3cacdc54ab3a9c0a9dd34d4247d (patch)
tree061b74b01dafa17d2b4db0cb28d11c1fcaf15eb3
parent8a472e4dd7195b35f2f4a85dce2a462c549acf97 (diff)
downloadgcc-77486e4a3bdfe3cacdc54ab3a9c0a9dd34d4247d.tar.gz
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174970 138bc75d-0d04-0410-961f-82ee72b054a4
-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 2bcc01b0e3c..2721e8ee3e5 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 0d297c3e913..24d1615bc84 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 b62e50b93f0..e10e28e1753 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)