diff options
| author | bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-04-04 15:56:36 +0000 |
|---|---|---|
| committer | bernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-04-04 15:56:36 +0000 |
| commit | 097ef0af1d0513cece27b7b18702bd30fdd7c38e (patch) | |
| tree | 4463acd8dd211c28153b8d8b4d1ee618099503ea /gcc | |
| parent | 344dc2fabb86eff576d4b419c3eeab6ca4aaa26c (diff) | |
| download | ppe42-gcc-097ef0af1d0513cece27b7b18702bd30fdd7c38e.tar.gz ppe42-gcc-097ef0af1d0513cece27b7b18702bd30fdd7c38e.zip | |
Partially revert previous change
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41085 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/sched-deps.c | 16 |
2 files changed, 20 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 69e2eacbc3c..9855c592fa8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2001-04-04 Bernd Schmidt <bernds@redhat.com> + + * sched-deps.c (sched_analyze_insn): Partially revert March 27 + change. + 2001-04-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> * emit-rtl.c (mark_label_nuses) Increment the label uses for diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c index 0d13a2025e3..0bb9386f2ea 100644 --- a/gcc/sched-deps.c +++ b/gcc/sched-deps.c @@ -1022,12 +1022,13 @@ sched_analyze_insn (deps, x, insn, loop_notes) if (GET_CODE (insn) == JUMP_INSN) { - rtx next, u; + rtx next; next = next_nonnote_insn (insn); if (next && GET_CODE (next) == BARRIER) schedule_barrier_found = 1; else { + rtx pending, pending_mem, u; regset_head tmp; INIT_REG_SET (&tmp); @@ -1042,6 +1043,19 @@ sched_analyze_insn (deps, x, insn, loop_notes) }); CLEAR_REG_SET (&tmp); + + pending = deps->pending_write_insns; + pending_mem = deps->pending_write_mems; + while (pending) + { + add_dependence (insn, XEXP (pending, 0), REG_DEP_OUTPUT); + + pending = XEXP (pending, 1); + pending_mem = XEXP (pending_mem, 1); + } + + for (u = deps->last_pending_memory_flush; u; u = XEXP (u, 1)) + add_dependence (insn, XEXP (u, 0), REG_DEP_ANTI); } } |

