re PR rtl-optimization/47612 (RTL crash when cc0 setter moved away from cc0 user)
PR rtl-optimization/47612 * df-problems.c (can_move_insns_across): Don't pick a cc0 setter as the last insn of the sequence to be moved. From-SVN: r173393
This commit is contained in:
parent
a3330c9d55
commit
0360f70d36
2 changed files with 15 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
|||
2011-05-04 Bernd Schmidt <bernds@codesourcery.com>
|
||||
|
||||
PR rtl-optimization/47612
|
||||
* df-problems.c (can_move_insns_across): Don't pick a cc0 setter
|
||||
as the last insn of the sequence to be moved.
|
||||
|
||||
2011-05-04 Tobias Burnus <burnus@net-b.de>
|
||||
|
||||
PR fortran/48864
|
||||
|
|
|
@ -4001,7 +4001,10 @@ can_move_insns_across (rtx from, rtx to, rtx across_from, rtx across_to,
|
|||
if (bitmap_intersect_p (merge_set, test_use)
|
||||
|| bitmap_intersect_p (merge_use, test_set))
|
||||
break;
|
||||
max_to = insn;
|
||||
#ifdef HAVE_cc0
|
||||
if (!sets_cc0_p (insn))
|
||||
#endif
|
||||
max_to = insn;
|
||||
}
|
||||
next = NEXT_INSN (insn);
|
||||
if (insn == to)
|
||||
|
@ -4038,7 +4041,11 @@ can_move_insns_across (rtx from, rtx to, rtx across_from, rtx across_to,
|
|||
{
|
||||
if (NONDEBUG_INSN_P (insn))
|
||||
{
|
||||
if (!bitmap_intersect_p (test_set, local_merge_live))
|
||||
if (!bitmap_intersect_p (test_set, local_merge_live)
|
||||
#ifdef HAVE_cc0
|
||||
&& !sets_cc0_p (insn)
|
||||
#endif
|
||||
)
|
||||
{
|
||||
max_to = insn;
|
||||
break;
|
||||
|
|
Loading…
Add table
Reference in a new issue