diff options
| -rw-r--r-- | gcc/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/flow.c | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ed7a5ae..727bcf9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Tue Jul 24 10:49:40 CEST 2001 Jan Hubicka <jh@suse.cz> + + * flow.c (delete_noop_moves): Do not confuse libcall regions. + 2001-07-23 Richard Henderson <rth@redhat.com> * flow.c (try_simplify_condjump): Use tidy_fallthru_edge. @@ -4327,9 +4327,11 @@ delete_noop_moves (f) next = NEXT_INSN (insn); if (INSN_P (insn) && noop_move_p (insn)) { - if (insn == bb->end) - bb->end = PREV_INSN (insn); - flow_delete_insn (insn); + /* Do not call flow_delete_insn here to not confuse backward + pointers of LIBCALL block. */ + PUT_CODE (insn, NOTE); + NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED; + NOTE_SOURCE_FILE (insn) = 0; } } } |
