aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-scalar-evolution.h
diff options
context:
space:
mode:
authorBin Cheng <bin.cheng@arm.com>2016-07-15 09:04:57 +0000
committerBin Cheng <amker@gcc.gnu.org>2016-07-15 09:04:57 +0000
commit43aabfcfd4139e4c9e7b868199e09b97e66010bc (patch)
treebf2cd011c65849144b67a4d65d74e9dc61f556d8 /gcc/tree-scalar-evolution.h
parentafc89e58498ef6a275d4e018d26b6fca3940ef1e (diff)
downloadgcc-43aabfcfd4139e4c9e7b868199e09b97e66010bc.zip
gcc-43aabfcfd4139e4c9e7b868199e09b97e66010bc.tar.gz
gcc-43aabfcfd4139e4c9e7b868199e09b97e66010bc.tar.bz2
tree-scalar-evolution.c (simple_iv_with_niters): New funcion.
* tree-scalar-evolution.c (simple_iv_with_niters): New funcion. (derive_simple_iv_with_niters): New function. (simple_iv): Rewrite using simple_iv_with_niters. * tree-scalar-evolution.h (simple_iv_with_niters): New decl. * tree-ssa-loop-niter.c (number_of_iterations_exit_assumptions): New function. (number_of_iterations_exit): Rewrite using above function. * tree-ssa-loop-niter.h (number_of_iterations_exit_assumptions): New Decl. gcc/testsuite * gcc.dg/tree-ssa/loop-41.c: New test. From-SVN: r238367
Diffstat (limited to 'gcc/tree-scalar-evolution.h')
-rw-r--r--gcc/tree-scalar-evolution.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/tree-scalar-evolution.h b/gcc/tree-scalar-evolution.h
index 382d717..a77e452 100644
--- a/gcc/tree-scalar-evolution.h
+++ b/gcc/tree-scalar-evolution.h
@@ -36,6 +36,8 @@ extern void gather_stats_on_scev_database (void);
extern void final_value_replacement_loop (struct loop *);
extern unsigned int scev_const_prop (void);
extern bool expression_expensive_p (tree);
+extern bool simple_iv_with_niters (struct loop *, struct loop *, tree,
+ struct affine_iv *, tree *, bool);
extern bool simple_iv (struct loop *, struct loop *, tree, struct affine_iv *,
bool);
extern bool iv_can_overflow_p (struct loop *, tree, tree, tree);