diff options
author | Jason Eckhardt <jle@cygnus.com> | 2000-05-02 22:05:06 +0000 |
---|---|---|
committer | Jason Eckhardt <jle@gcc.gnu.org> | 2000-05-02 22:05:06 +0000 |
commit | eb6f82f7cf7575a603f86cb1b8de3909b6167ec7 (patch) | |
tree | feb06eee1960ffa214372a52839a71d4ed45fb5b | |
parent | f8855270260a5f06980e762c66ea2eceda1aeb3f (diff) | |
download | gcc-eb6f82f7cf7575a603f86cb1b8de3909b6167ec7.zip gcc-eb6f82f7cf7575a603f86cb1b8de3909b6167ec7.tar.gz gcc-eb6f82f7cf7575a603f86cb1b8de3909b6167ec7.tar.bz2 |
bb-reorder.c (remove_scope_notes): Check for both types of scope notes as the end of a basic block before deleting.
Tue May 2 17:06:53 2000 Jason Eckhardt <jle@cygnus.com>
* bb-reorder.c (remove_scope_notes): Check for both types of scope
notes as the end of a basic block before deleting.
From-SVN: r33619
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/bb-reorder.c | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 27efc8f..e14ceea 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Tue May 2 17:06:53 2000 Jason Eckhardt <jle@cygnus.com> + + * bb-reorder.c (remove_scope_notes): Check for both types of scope + notes as the end of a basic block before deleting. + 2000-05-02 Mumit Khan <khan@xraylith.wisc.edu> * final.c (final_start_function): Fix spelling of "necessary". diff --git a/gcc/bb-reorder.c b/gcc/bb-reorder.c index 3a9a25f..8ef6bd1 100644 --- a/gcc/bb-reorder.c +++ b/gcc/bb-reorder.c @@ -1146,10 +1146,11 @@ remove_scope_notes () && (NOTE_LINE_NUMBER (x) == NOTE_INSN_BLOCK_BEG || NOTE_LINE_NUMBER (x) == NOTE_INSN_BLOCK_END)) { - /* Check if the scope end happens to be the end of a bb. */ - if (currbb && x == currbb->end - && NOTE_LINE_NUMBER (x) == NOTE_INSN_BLOCK_END) + /* Check if the scope note happens to be the end of a bb. */ + if (currbb && x == currbb->end) currbb->end = PREV_INSN (x); + if (currbb && x == currbb->head) + abort (); if (PREV_INSN (x)) { |