aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1998-12-22 23:13:41 +0000
committerJeffrey A Law <law@cygnus.com>1998-12-22 23:13:41 +0000
commit7a3233d159a0f80cffb74da977a7289481e89f80 (patch)
tree9cae0ea55c4b6a305191fa164c622c3bd9a72da8
parent6350336a892b9e645bcc4dc2b949225e17ef6704 (diff)
Wed Dec 23 00:10:01 1998 Jeffrey A Law (law@cygnus.com)
* toplev.c (rest_of_compilation): Do not set reload_completed. * reload1.c (reload): Set reload_completed before calling cleanup_subreg_operands. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@24400 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/reload1.c5
-rw-r--r--gcc/toplev.c2
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fd7492607e6..0384fbc25a2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+Wed Dec 23 00:10:01 1998 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (rest_of_compilation): Do not set reload_completed.
+ * reload1.c (reload): Set reload_completed before calling
+ cleanup_subreg_operands.
+
Tue Dec 22 23:58:31 1998 Richard Henderson <rth@cygnus.com>
* reload1.c (emit_reload_insns): Check `set' not null before use.
diff --git a/gcc/reload1.c b/gcc/reload1.c
index e8bb5fe3e53..b4cb69cc19d 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -1116,6 +1116,11 @@ reload (first, global, dumpfile)
}
}
+ /* We must set reload_completed now since the cleanup_subreg_operands call
+ below will re-recognize each insn and reload may have generated insns
+ which are only valid during and after reload. */
+ reload_completed = 1;
+
/* Make a pass over all the insns and delete all USEs which we inserted
only to tag a REG_EQUAL note on them. Remove all REG_DEAD and REG_UNUSED
notes. Delete all CLOBBER insns and simplify (subreg (reg)) operands.
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 5e586b83998..5608af6e43e 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -3967,8 +3967,6 @@ rest_of_compilation (decl)
if (failure)
goto exit_rest_of_compilation;
- reload_completed = 1;
-
/* Do a very simple CSE pass over just the hard registers. */
if (optimize > 0)
reload_cse_regs (insns);