aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple.h
diff options
context:
space:
mode:
authorAndrew Pinski <apinski@cavium.com>2013-10-30 04:03:41 +0000
committerAndrew Pinski <pinskia@gcc.gnu.org>2013-10-29 21:03:41 -0700
commit5d2a9da9a7f7c19761dfe93849ac60fdb25cf7be (patch)
treeefa9c1f1d52130af37836627b254016ec220c182 /gcc/gimple.h
parentd8487c949ad5f1fac62020ab22544422490b37d2 (diff)
downloadgcc-5d2a9da9a7f7c19761dfe93849ac60fdb25cf7be.zip
gcc-5d2a9da9a7f7c19761dfe93849ac60fdb25cf7be.tar.gz
gcc-5d2a9da9a7f7c19761dfe93849ac60fdb25cf7be.tar.bz2
tree-ssa-ifcombine.c: Include rtl.h and tm_p.h.
2013-10-29 Andrew Pinski <apinski@cavium.com> * tree-ssa-ifcombine.c: Include rtl.h and tm_p.h. (ifcombine_ifandif): Handle cases where maybe_fold_and_comparisons fails, combining the branches anyways. (tree_ssa_ifcombine): Inverse the order of the basic block walk, increases the number of combinings. * gimple.h (gsi_start_nondebug_after_labels_bb): New function. 2013-10-29 Andrew Pinski <apinski@cavium.com> Zhenqiang Chen <zhenqiang.chen@linaro.org> * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c: New test case. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-2.c: New test case. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-3.c: New test case. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c: New test case. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c: New test case. * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c: New test case. * gcc.dg/tree-ssa/phi-opt-9.c: Use a function call to prevent conditional move to be used. * gcc.dg/tree-ssa/ssa-dom-thread-3.c: Remove. Co-Authored-By: Zhenqiang Chen <zhenqiang.chen@linaro.org> From-SVN: r204194
Diffstat (limited to 'gcc/gimple.h')
-rw-r--r--gcc/gimple.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/gimple.h b/gcc/gimple.h
index e34411d..b0fb861 100644
--- a/gcc/gimple.h
+++ b/gcc/gimple.h
@@ -5533,6 +5533,20 @@ gsi_start_nondebug_bb (basic_block bb)
return i;
}
+/* Return a new iterator pointing to the first non-debug non-label statement in
+ basic block BB. */
+
+static inline gimple_stmt_iterator
+gsi_start_nondebug_after_labels_bb (basic_block bb)
+{
+ gimple_stmt_iterator i = gsi_after_labels (bb);
+
+ if (!gsi_end_p (i) && is_gimple_debug (gsi_stmt (i)))
+ gsi_next_nondebug (&i);
+
+ return i;
+}
+
/* Return a new iterator pointing to the last non-debug statement in
basic block BB. */