diff options
author | m.hayes <m.hayes@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-11-25 21:32:27 +0000 |
---|---|---|
committer | m.hayes <m.hayes@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-11-25 21:32:27 +0000 |
commit | 7bb294722346fac33b03650eb08e6bb8bd8c6351 (patch) | |
tree | cd0eae0716d026df7c60885348c56a4214b633aa /gcc/loop.h | |
parent | ec5d911ab997aed77e13b30d6076b1bf87bf3e7e (diff) | |
download | gcc-7bb294722346fac33b03650eb08e6bb8bd8c6351.tar.gz |
* loop.h (precondition_loop_p): Added new mode argument.
* unroll.c (precondition_loop_p): Likewise.
(approx_final_value): Function deleted and subsumed
into loop_iterations.
(loop_find_equiv_value): New function.
(loop_iterations): Use loop_find_equiv_value to find increments
too large to be immediate constants. Also use it to find terms
common to initial and final iteration values that can be removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23885 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/loop.h')
-rw-r--r-- | gcc/loop.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/loop.h b/gcc/loop.h index f747e46612e..c47fa414868 100644 --- a/gcc/loop.h +++ b/gcc/loop.h @@ -215,7 +215,8 @@ void unroll_loop PROTO((rtx, int, rtx, rtx, struct loop_info *, int)); rtx biv_total_increment PROTO((struct iv_class *, rtx, rtx)); unsigned HOST_WIDE_INT loop_iterations PROTO((rtx, rtx, struct loop_info *)); int precondition_loop_p PROTO((rtx, struct loop_info *, - rtx *, rtx *, rtx *)); + rtx *, rtx *, rtx *, + enum machine_mode *mode)); rtx final_biv_value PROTO((struct iv_class *, rtx, rtx, unsigned HOST_WIDE_INT)); rtx final_giv_value PROTO((struct induction *, rtx, rtx, |