aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernd Schmidt <crux@pool.informatik.rwth-aachen.de>1998-10-05 14:20:39 -0600
committerJeff Law <law@gcc.gnu.org>1998-10-05 14:20:39 -0600
commitda5a44b36e490f7c25bf6782c01793b8381d147f (patch)
tree6ea2abfbb5492d4e5e390263c8418e5bc0bf3dab /gcc
parent5d7d0cae2fc5628a6c2c34c4d55763ed3cbb2288 (diff)
downloadgcc-da5a44b36e490f7c25bf6782c01793b8381d147f.zip
gcc-da5a44b36e490f7c25bf6782c01793b8381d147f.tar.gz
gcc-da5a44b36e490f7c25bf6782c01793b8381d147f.tar.bz2
* loop.c (combine_givs_p): Fix test for identical givs.
From-SVN: r22845
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/loop.c10
2 files changed, 9 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index df4c791..f42f2f9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Mon Oct 5 21:18:45 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
+
+ * loop.c (combine_givs_p): Fix test for identical givs.
+
Mon Oct 5 10:11:28 1998 Nick Clifton <nickc@cygnus.com>
* dwarf2out.c (gen_subprogram_die): If errorcount nonzero, don't
diff --git a/gcc/loop.c b/gcc/loop.c
index f8e4d8d..9774457 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -6299,10 +6299,10 @@ express_from (g1, g2)
return gen_rtx_PLUS (g2->mode, mult, add);
}
-/* Return 1 if giv G2 can be combined with G1. This means that G2 can use
- (either directly or via an address expression) a register used to represent
- G1. Set g2->new_reg to a represtation of G1 (normally just
- g1->dest_reg). */
+/* Return an rtx, if any, that expresses giv G2 as a function of the register
+ represented by G1. This indicates that G2 should be combined with G1 and
+ that G2 can use (either directly or via an address expression) a register
+ used to represent G1. */
static rtx
combine_givs_p (g1, g2)
@@ -6313,7 +6313,7 @@ combine_givs_p (g1, g2)
/* If these givs are identical, they can be combined. We use the results
of express_from because the addends are not in a canonical form, so
rtx_equal_p is a weaker test. */
- if (tem == const0_rtx)
+ if (tem == g1->dest_reg)
{
return g1->dest_reg;
}