diff options
author | Jeffrey A Law <law@cygnus.com> | 1999-02-15 22:09:07 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-02-15 15:09:07 -0700 |
commit | 0c63f729edf63919459d05a4bdf65b6b30cf0b0f (patch) | |
tree | eaeeb367c325a65b8e749cfaa89c244590ddf1c3 /gcc | |
parent | 25d7717e55e4253c11ecc68857b80e0412372c22 (diff) | |
download | gcc-0c63f729edf63919459d05a4bdf65b6b30cf0b0f.zip gcc-0c63f729edf63919459d05a4bdf65b6b30cf0b0f.tar.gz gcc-0c63f729edf63919459d05a4bdf65b6b30cf0b0f.tar.bz2 |
jump.c: Include insn-attr.h.
* jump.c: Include insn-attr.h.
(delete_computation): If reload has completed and insn scheduling
after reload is enabled, then do not depend on REG_DEAD notes.
* Makefile.in (jump.o): Depend on insn-attr.h.
From-SVN: r25223
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/Makefile.in | 2 | ||||
-rw-r--r-- | gcc/jump.c | 12 |
3 files changed, 20 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 168c407..436ec44 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +Mon Feb 15 23:04:48 1999 Jeffrey A Law (law@cygnus.com) + + * jump.c: Include insn-attr.h. + (delete_computation): If reload has completed and insn scheduling + after reload is enabled, then do not depend on REG_DEAD notes. + * Makefile.in (jump.o): Depend on insn-attr.h. + Mon Feb 15 16:57:38 1999 Richard Henderson <rth@cygnus.com> * i386.md (addsi3): Allow lea for any constant_p. diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 6d18da8..7fae234 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1495,7 +1495,7 @@ integrate.o : integrate.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ jump.o : jump.c $(CONFIG_H) system.h $(RTL_H) flags.h hard-reg-set.h $(REGS_H) \ insn-config.h insn-flags.h $(RECOG_H) $(EXPR_H) real.h except.h \ - toplev.h + toplev.h insn-attr.h stupid.o : stupid.c $(CONFIG_H) system.h $(RTL_H) $(REGS_H) hard-reg-set.h \ $(BASIC_BLOCK_H) insn-config.h reload.h flags.h toplev.h @@ -59,6 +59,7 @@ Boston, MA 02111-1307, USA. */ #include "regs.h" #include "insn-config.h" #include "insn-flags.h" +#include "insn-attr.h" #include "recog.h" #include "expr.h" #include "real.h" @@ -3754,6 +3755,17 @@ delete_computation (insn) } #endif +#ifdef INSN_SCHEDULING + /* ?!? The schedulers do not keep REG_DEAD notes accurate after + reload has completed. The schedulers need to be fixed. Until + they are, we must not rely on the death notes here. */ + if (reload_completed && flag_schedule_insns_after_reload) + { + delete_insn (insn); + return; + } +#endif + for (note = REG_NOTES (insn); note; note = next) { rtx our_prev; |