summaryrefslogtreecommitdiff
path: root/gcc/combine.c
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1997-11-03 21:55:49 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1997-11-03 21:55:49 +0000
commit4d43c81dd69fff8012d8299731564fb9d3143f88 (patch)
tree8ffd777069752441cbfea0565210db123eccbf37 /gcc/combine.c
parentb8c567a19b0799b8c3650ab75cea7cd327fc011c (diff)
downloadgcc-4d43c81dd69fff8012d8299731564fb9d3143f88.tar.gz
Remove last combine patch. rth & jim are working on a new one.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@16304 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/combine.c')
-rw-r--r--gcc/combine.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 80fac52e28e..20bcaf9b37e 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -1240,7 +1240,6 @@ try_combine (i3, i2, i1)
rtx i2pat;
/* Indicates if I2DEST or I1DEST is in I2SRC or I1_SRC. */
int i2dest_in_i2src = 0, i1dest_in_i1src = 0, i2dest_in_i1src = 0;
- int i1dest_in_i2src = 0;
int i1_feeds_i3 = 0;
/* Notes that must be added to REG_NOTES in I3 and I2. */
rtx new_i3_notes, new_i2_notes;
@@ -1424,7 +1423,6 @@ try_combine (i3, i2, i1)
i2dest_in_i2src = reg_overlap_mentioned_p (i2dest, i2src);
i1dest_in_i1src = i1 && reg_overlap_mentioned_p (i1dest, i1src);
i2dest_in_i1src = i1 && reg_overlap_mentioned_p (i2dest, i1src);
- i1dest_in_i2src = i1 && reg_overlap_mentioned_p (i1dest, i2src);
/* See if I1 directly feeds into I3. It does if I1DEST is not used
in I2SRC. */
@@ -2148,12 +2146,10 @@ try_combine (i3, i2, i1)
rtx i3links, i2links, i1links = 0;
rtx midnotes = 0;
register int regno;
- /* Compute which registers we expect to eliminate. newi2pat may be setting
- either i3dest or i2dest, so we must check it. */
- rtx elim_i2 = ((newi2pat && reg_set_p (i2dest, newi2pat))
- || i2dest_in_i2src || i2dest_in_i1src
+ /* Compute which registers we expect to eliminate. */
+ rtx elim_i2 = (newi2pat || i2dest_in_i2src || i2dest_in_i1src
? 0 : i2dest);
- rtx elim_i1 = i1 == 0 || i1dest_in_i1src || i1dest_in_i2src ? 0 : i1dest;
+ rtx elim_i1 = i1 == 0 || i1dest_in_i1src ? 0 : i1dest;
/* Get the old REG_NOTES and LOG_LINKS from all our insns and
clear them. */
@@ -2321,7 +2317,7 @@ try_combine (i3, i2, i1)
distribute_notes (gen_rtx (EXPR_LIST, REG_DEAD, i3dest_killed,
NULL_RTX),
NULL_RTX, i3, newi2pat ? i2 : NULL_RTX,
- elim_i2, elim_i1);
+ NULL_RTX, NULL_RTX);
}
if (i2dest_in_i2src)