ifcvt.c (dead_or_predicable): Manually squeeze non-movable notes from the last insn in the sequence.
* ifcvt.c (dead_or_predicable): Manually squeeze non-movable notes from the last insn in the sequence. From-SVN: r33555
This commit is contained in:
parent
baf05df059
commit
0ca4f243d7
2 changed files with 18 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2000-04-30 Richard Henderson <rth@cygnus.com>
|
||||||
|
|
||||||
|
* ifcvt.c (dead_or_predicable): Manually squeeze non-movable notes
|
||||||
|
from the last insn in the sequence.
|
||||||
|
|
||||||
2000-04-30 Zack Weinberg <zack@wolery.cumb.org>
|
2000-04-30 Zack Weinberg <zack@wolery.cumb.org>
|
||||||
|
|
||||||
* cpplex.c (cpp_idcmp): New function.
|
* cpplex.c (cpp_idcmp): New function.
|
||||||
|
|
13
gcc/ifcvt.c
13
gcc/ifcvt.c
|
@ -1927,6 +1927,19 @@ dead_or_predicable (test_bb, merge_bb, other_bb, new_dest, reversep)
|
||||||
if (head != NULL)
|
if (head != NULL)
|
||||||
{
|
{
|
||||||
head = squeeze_notes (head, end);
|
head = squeeze_notes (head, end);
|
||||||
|
if (GET_CODE (end) == NOTE
|
||||||
|
&& (NOTE_LINE_NUMBER (end) == NOTE_INSN_BLOCK_END
|
||||||
|
|| NOTE_LINE_NUMBER (end) == NOTE_INSN_BLOCK_BEG
|
||||||
|
|| NOTE_LINE_NUMBER (end) == NOTE_INSN_LOOP_BEG
|
||||||
|
|| NOTE_LINE_NUMBER (end) == NOTE_INSN_LOOP_END
|
||||||
|
|| NOTE_LINE_NUMBER (end) == NOTE_INSN_LOOP_CONT
|
||||||
|
|| NOTE_LINE_NUMBER (end) == NOTE_INSN_LOOP_VTOP))
|
||||||
|
{
|
||||||
|
if (head == end)
|
||||||
|
return TRUE;
|
||||||
|
end = PREV_INSN (end);
|
||||||
|
}
|
||||||
|
|
||||||
reorder_insns (head, end, PREV_INSN (earliest));
|
reorder_insns (head, end, PREV_INSN (earliest));
|
||||||
}
|
}
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
Loading…
Add table
Reference in a new issue