aboutsummaryrefslogtreecommitdiff
path: root/gcc/loop.h
diff options
context:
space:
mode:
authorMichael Hayes <m.hayes@elec.canterbury.ac.nz>1998-11-25 21:32:27 +0000
committerMichael Hayes <m.hayes@gcc.gnu.org>1998-11-25 21:32:27 +0000
commite96b4d7a44d83dc2d5cbf2f6a12d9c46a76886f4 (patch)
treecd0eae0716d026df7c60885348c56a4214b633aa /gcc/loop.h
parent302670f3f00ef8b555278b4216e3c1e1544352c2 (diff)
downloadgcc-e96b4d7a44d83dc2d5cbf2f6a12d9c46a76886f4.zip
gcc-e96b4d7a44d83dc2d5cbf2f6a12d9c46a76886f4.tar.gz
gcc-e96b4d7a44d83dc2d5cbf2f6a12d9c46a76886f4.tar.bz2
loop.h (precondition_loop_p): Added new mode argument.
* 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. From-SVN: r23885
Diffstat (limited to 'gcc/loop.h')
-rw-r--r--gcc/loop.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/loop.h b/gcc/loop.h
index f747e46..c47fa41 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,