diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-07-24 08:54:59 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-07-24 08:54:59 +0000 |
commit | b98bcd6654c8407ebd6e4c0da412e62fd9127889 (patch) | |
tree | ab2e8ae568de710f7cdef4545f31ea50b0300b44 /gcc/flow.c | |
parent | 02ae6d969c7b135c21d94d9b9a2e058e59ac7040 (diff) | |
download | gcc-b98bcd6654c8407ebd6e4c0da412e62fd9127889.tar.gz |
* flow.c (delete_noop_moves): Do not confuse libcall regions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44290 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/flow.c')
-rw-r--r-- | gcc/flow.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/flow.c b/gcc/flow.c index 904684a37cd..5850daf191f 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -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; } } } |