diff options
author | Richard Stallman <rms@gnu.org> | 1992-03-11 02:13:57 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1992-03-11 02:13:57 +0000 |
commit | 0e690bdb73fc6e1f8f7c14054dc57c8cc6d861ce (patch) | |
tree | f42f602364dd8757aab10df06c649ed36c6737a1 /gcc | |
parent | 0310ba22cad44dd5fa1d13002acf8b69044cb598 (diff) | |
download | gcc-0e690bdb73fc6e1f8f7c14054dc57c8cc6d861ce.zip gcc-0e690bdb73fc6e1f8f7c14054dc57c8cc6d861ce.tar.gz gcc-0e690bdb73fc6e1f8f7c14054dc57c8cc6d861ce.tar.bz2 |
*** empty log message ***
From-SVN: r431
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/jump.c | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -1416,6 +1416,15 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan) rtx range1after, range2after; rtx range1before, range2before; + /* Include in each range any line number before it. */ + while (PREV_INSN (range1beg) + && GET_CODE (PREV_INSN (range1beg)) == NOTE) + range1beg = PREV_INSN (range1beg); + + while (PREV_INSN (range2beg) + && GET_CODE (PREV_INSN (range2beg)) == NOTE) + range2beg = PREV_INSN (range2beg); + /* Don't move NOTEs for blocks or loops; shift them outside the ranges, where they'll stay put. */ squeeze_notes (range1beg, range1end); @@ -2666,7 +2675,7 @@ mark_jump_label (x, insn, cross_jump) { if (GET_CODE (insn) == JUMP_INSN) JUMP_LABEL (insn) = label; - else if (! find_reg_note (insn, REG_LABEL, 0)) + else if (! find_reg_note (insn, REG_LABEL, label)) { rtx next = next_real_insn (label); /* Don't record labels that refer to dispatch tables. |