aboutsummaryrefslogtreecommitdiff
path: root/gcc/loop.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@multimania.com>2002-06-15 01:10:49 +0000
committerRichard Henderson <rth@gcc.gnu.org>2002-06-14 18:10:49 -0700
commit045d7161a0fbbde5c70c2d1aef786c578f423a61 (patch)
tree32973a77f9b92a29a421bc6e7eefe35737b606cc /gcc/loop.c
parent048c86160456fc8b165ec3a9761166896d17d566 (diff)
downloadgcc-045d7161a0fbbde5c70c2d1aef786c578f423a61.zip
gcc-045d7161a0fbbde5c70c2d1aef786c578f423a61.tar.gz
gcc-045d7161a0fbbde5c70c2d1aef786c578f423a61.tar.bz2
loop.c (check_final_value): Use v->always_executed instead of v->always_computable.
* loop.c (check_final_value): Use v->always_executed instead of v->always_computable. * unroll.c (final_giv_value): Don't calculate the final value as a function of the biv if the giv is not computed for every loop iteration. From-SVN: r54634
Diffstat (limited to 'gcc/loop.c')
-rw-r--r--gcc/loop.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/loop.c b/gcc/loop.c
index d3b62af..dc64b5c 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -5943,7 +5943,8 @@ check_final_value (loop, v)
#endif
if ((final_value = final_giv_value (loop, v))
- && (v->always_computable || last_use_this_basic_block (v->dest_reg, v->insn)))
+ && (v->always_executed
+ || last_use_this_basic_block (v->dest_reg, v->insn)))
{
int biv_increment_seen = 0, before_giv_insn = 0;
rtx p = v->insn;