diff options
author | Roger Sayle <roger@eyesopen.com> | 2002-09-17 09:03:57 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2002-09-17 09:03:57 +0000 |
commit | 07532fad028474b38d707adf3a839feea9faf853 (patch) | |
tree | 17b3a2e1101e59f0f62bab7b90c71b6a80e7ed07 /gcc | |
parent | 6d9f7a686659d0e0b69d8394743ec27a87e0c4d7 (diff) | |
download | gcc-07532fad028474b38d707adf3a839feea9faf853.zip gcc-07532fad028474b38d707adf3a839feea9faf853.tar.gz gcc-07532fad028474b38d707adf3a839feea9faf853.tar.bz2 |
cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
* cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
From-SVN: r57243
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cfgrtl.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ee29a5a..086cdd5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-09-17 Roger Sayle <roger@eyesopen.com> + + * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned + NOTE_INSN_LOOP_CONT notes when deleting basic blocks. + 2002-09-16 Richard Henderson <rth@redhat.com> * expr.c (emit_block_move): Set memory block size as appropriate diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c index 25a5c9f..a721239 100644 --- a/gcc/cfgrtl.c +++ b/gcc/cfgrtl.c @@ -360,13 +360,15 @@ flow_delete_block_noexpunge (b) and remove the associated NOTE_INSN_EH_REGION_BEG and NOTE_INSN_EH_REGION_END notes. */ - /* Get rid of all NOTE_INSN_PREDICTIONs hanging before the block. */ + /* Get rid of all NOTE_INSN_PREDICTIONs and NOTE_INSN_LOOP_CONTs + hanging before the block. */ for (insn = PREV_INSN (b->head); insn; insn = PREV_INSN (insn)) { if (GET_CODE (insn) != NOTE) break; - if (NOTE_LINE_NUMBER (insn) == NOTE_INSN_PREDICTION) + if (NOTE_LINE_NUMBER (insn) == NOTE_INSN_PREDICTION + || NOTE_LINE_NUMBER (insn) == NOTE_INSN_LOOP_CONT) NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED; } |