aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtlanal.c
diff options
context:
space:
mode:
authorZhenqiang Chen <zhenqiang.chen@arm.com>2014-10-21 03:38:37 +0000
committerZhenqiang Chen <zqchen@gcc.gnu.org>2014-10-21 03:38:37 +0000
commit11204b2de523611cf7f1135aa5ff1cfb1bb11001 (patch)
tree095a9c0fd61d03f3ccb70c3d847baf69add08e2e /gcc/rtlanal.c
parenteb1da98ac659b13a43deed26f424c83f8da92d1d (diff)
downloadgcc-11204b2de523611cf7f1135aa5ff1cfb1bb11001.zip
gcc-11204b2de523611cf7f1135aa5ff1cfb1bb11001.tar.gz
gcc-11204b2de523611cf7f1135aa5ff1cfb1bb11001.tar.bz2
cfgloopanal.c (seq_cost): Delete.
2014-10-21 Zhenqiang Chen <zhenqiang.chen@arm.com> * cfgloopanal.c (seq_cost): Delete. * rtl.h (seq_cost): New prototype. * rtlanal.c (seq_cost): New function. * tree-ssa-loop-ivopts.c (seq_cost): Delete. From-SVN: r216501
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r--gcc/rtlanal.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 75362e4..6459238 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -5051,6 +5051,26 @@ insn_rtx_cost (rtx pat, bool speed)
return cost > 0 ? cost : COSTS_N_INSNS (1);
}
+/* Returns estimate on cost of computing SEQ. */
+
+unsigned
+seq_cost (const rtx_insn *seq, bool speed)
+{
+ unsigned cost = 0;
+ rtx set;
+
+ for (; seq; seq = NEXT_INSN (seq))
+ {
+ set = single_set (seq);
+ if (set)
+ cost += set_rtx_cost (set, speed);
+ else
+ cost++;
+ }
+
+ return cost;
+}
+
/* Given an insn INSN and condition COND, return the condition in a
canonical form to simplify testing by callers. Specifically: