aboutsummaryrefslogtreecommitdiff
path: root/gcc/haifa-sched.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-03-13 09:38:17 -0800
committerRichard Henderson <rth@gcc.gnu.org>1999-03-13 09:38:17 -0800
commitb452ec852d0c8200297e6fce7205f3090aa8a01c (patch)
tree46258441c613951e3bc7e91206ed1dec0cf48ec6 /gcc/haifa-sched.c
parent98941e0190f374aca42970b46a18a2793faa5b88 (diff)
downloadgcc-b452ec852d0c8200297e6fce7205f3090aa8a01c.zip
gcc-b452ec852d0c8200297e6fce7205f3090aa8a01c.tar.gz
gcc-b452ec852d0c8200297e6fce7205f3090aa8a01c.tar.bz2
* haifa-sched.c (sched_analyze_1): Only clear reg_last_uses on a SET.
From-SVN: r25752
Diffstat (limited to 'gcc/haifa-sched.c')
-rw-r--r--gcc/haifa-sched.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c
index 8c7e8b58..cc8116b 100644
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -3357,7 +3357,6 @@ sched_analyze_1 (x, insn)
for (u = reg_last_uses[regno + i]; u; u = XEXP (u, 1))
add_dependence (insn, XEXP (u, 0), REG_DEP_ANTI);
- reg_last_uses[regno + i] = 0;
for (u = reg_last_sets[regno + i]; u; u = XEXP (u, 1))
add_dependence (insn, XEXP (u, 0), REG_DEP_OUTPUT);
@@ -3366,6 +3365,7 @@ sched_analyze_1 (x, insn)
but sets must be ordered with respect to a pending clobber. */
if (code == SET)
{
+ reg_last_uses[regno + i] = 0;
for (u = reg_last_clobbers[regno + i]; u; u = XEXP (u, 1))
add_dependence (insn, XEXP (u, 0), REG_DEP_OUTPUT);
SET_REGNO_REG_SET (reg_pending_sets, regno + i);
@@ -3386,13 +3386,13 @@ sched_analyze_1 (x, insn)
for (u = reg_last_uses[regno]; u; u = XEXP (u, 1))
add_dependence (insn, XEXP (u, 0), REG_DEP_ANTI);
- reg_last_uses[regno] = 0;
for (u = reg_last_sets[regno]; u; u = XEXP (u, 1))
add_dependence (insn, XEXP (u, 0), REG_DEP_OUTPUT);
if (code == SET)
{
+ reg_last_uses[regno] = 0;
for (u = reg_last_clobbers[regno]; u; u = XEXP (u, 1))
add_dependence (insn, XEXP (u, 0), REG_DEP_OUTPUT);
SET_REGNO_REG_SET (reg_pending_sets, regno);