summaryrefslogtreecommitdiff
path: root/gcc/loop.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-06-15 01:10:49 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-06-15 01:10:49 +0000
commita22e3dfa0b89b630518417da71e5060580f7c6cd (patch)
tree32973a77f9b92a29a421bc6e7eefe35737b606cc /gcc/loop.c
parentfa81344030faf9d4f501a535dac42d6fdb58000a (diff)
downloadgcc-a22e3dfa0b89b630518417da71e5060580f7c6cd.tar.gz
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54634 138bc75d-0d04-0410-961f-82ee72b054a4
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 d3b62af6ceb..dc64b5c889a 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;