aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2008-05-11 18:54:15 +0000
committerUros Bizjak <ubizjak@gmail.com>2008-05-11 18:54:15 +0000
commitdf4738465530ee4243131d09fb391a1464e5016f (patch)
treef9a3e98cc5542c9fdf51c9c2609edf6e12d5d32b
parentea664d3726e811e5ee991fb01a4f734b4ad23228 (diff)
Backport from mainline:
2008-05-09 Uros Bizjak <ubizjak@gmail.com> PR tree-optimization/36129 * tree-ssa-ccp.c: Include value-prof.h. (execute_fold_all_builtins): Call gimple_remove_stmt_histograms if built-in function was folded to a constant. * Makefile.in (tree-ssa-ccp.c): Depend on value-prof.h git-svn-id: https://gcc.gnu.org/svn/gcc/branches/gcc-4_3-branch@135180 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog12
-rw-r--r--gcc/Makefile.in2
-rw-r--r--gcc/tree-ssa-ccp.c5
3 files changed, 17 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0f95fb1151c..588bdb4ff9f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2008-05-11 Uros Bizjak <ubizjak@gmail.com>
+
+ Backport from mainline:
+ 2008-05-09 Uros Bizjak <ubizjak@gmail.com>
+
+ PR tree-optimization/36129
+ * tree-ssa-ccp.c: Include value-prof.h.
+ (execute_fold_all_builtins): Call gimple_remove_stmt_histograms if
+ built-in function was folded to a constant.
+ * Makefile.in (tree-ssa-ccp.c): Depend on value-prof.h
+
2008-05-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36187
@@ -9,7 +20,6 @@
2008-05-09 Steve Ellcey <sje@cup.hp.com>
Backport from mainline:
-
2008-04-07 Peter Bergner <bergner@vnet.ibm.com>
PR middle-end/PR28690
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index e4e49f8968a..b9e1858d156 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -2581,7 +2581,7 @@ tree-ssa-ccp.o : tree-ssa-ccp.c $(TREE_FLOW_H) $(CONFIG_H) \
$(SYSTEM_H) $(RTL_H) $(TREE_H) $(TM_P_H) $(EXPR_H) $(GGC_H) output.h \
$(DIAGNOSTIC_H) $(FUNCTION_H) $(TIMEVAR_H) $(TM_H) coretypes.h \
$(TREE_DUMP_H) $(BASIC_BLOCK_H) tree-pass.h langhooks.h \
- tree-ssa-propagate.h $(FLAGS_H) $(TARGET_H) toplev.h
+ tree-ssa-propagate.h value-prof.h $(FLAGS_H) $(TARGET_H) toplev.h
tree-sra.o : tree-sra.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(RTL_H) \
$(TM_P_H) $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(TREE_INLINE_H) \
$(TIMEVAR_H) $(TM_H) coretypes.h $(TREE_DUMP_H) $(TREE_GIMPLE_H) \
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index c8b3518ea5a..e3e35d9d5e4 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -204,6 +204,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-flow.h"
#include "tree-pass.h"
#include "tree-ssa-propagate.h"
+#include "value-prof.h"
#include "langhooks.h"
#include "target.h"
#include "toplev.h"
@@ -2892,6 +2893,10 @@ execute_fold_all_builtins (void)
fcode = DECL_FUNCTION_CODE (callee);
result = ccp_fold_builtin (*stmtp, call);
+
+ if (result)
+ gimple_remove_stmt_histograms (cfun, *stmtp);
+
if (!result)
switch (DECL_FUNCTION_CODE (callee))
{