summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/combine.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 44f8a1f5791..93b0f9de196 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-11-30 Alexandre Oliva <aoliva@redhat.com>
+
+ * combine.c (try_combine): Disregard USEs when updating LOG_LINKS
+ of subsequent insns.
+
2000-11-30 Richard Henderson <rth@redhat.com>
* config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Disable.
diff --git a/gcc/combine.c b/gcc/combine.c
index df773aacdd6..1946ba2d3a1 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -2553,7 +2553,8 @@ try_combine (i3, i2, i1, new_direct_jump_p)
if (i3_subst_into_i2 && GET_CODE (PATTERN (i2)) == PARALLEL)
{
for (i = 0; i < XVECLEN (PATTERN (i2), 0); i++)
- if (GET_CODE (SET_DEST (XVECEXP (PATTERN (i2), 0, i))) == REG
+ if (GET_CODE (XVECEXP (PATTERN (i2), 0, i)) != USE
+ && GET_CODE (SET_DEST (XVECEXP (PATTERN (i2), 0, i))) == REG
&& SET_DEST (XVECEXP (PATTERN (i2), 0, i)) != i2dest
&& ! find_reg_note (i2, REG_UNUSED,
SET_DEST (XVECEXP (PATTERN (i2), 0, i))))