From: Zdenek Dvorak Date: Sun, 29 Jun 2003 20:42:42 +0000 (+0200) Subject: loop.c (count_one_set): Fix detection of registers set in more than one basic block. X-Git-Tag: releases/gcc-3.4.0~5339 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=51a7f2053aff54ea60592d8105860b7c30867a38;p=thirdparty%2Fgcc.git loop.c (count_one_set): Fix detection of registers set in more than one basic block. * loop.c (count_one_set): Fix detection of registers set in more than one basic block. From-SVN: r68680 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5318c9a4dfb4..784d3b050783 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-06-29 Zdenek Dvorak + + * loop.c (count_one_set): Fix detection of registers set in more + than one basic block. + 2003-06-29 Andreas Jaeger * target-def.h: Remove usage of OBJECT_FORMAT_ROSE. diff --git a/gcc/loop.c b/gcc/loop.c index ae7edab06d5a..8c6a0e501a1b 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -3617,7 +3617,7 @@ count_one_set (regs, insn, x, last_set) it must be set in two basic blocks, so it cannot be moved out of the loop. */ if (regs->array[regno].set_in_loop > 0 - && last_set == 0) + && last_set[regno] == 0) regs->array[regno+i].may_not_optimize = 1; /* If this is not first setting in current basic block, see if reg was used in between previous one and this.