re PR target/40587 (Revision 139590 caused ICE in emit_swap_insn at reg-stack.c:827)
2009-07-03 Vladimir Makarov <vmakarov@redhat.com> PR target/40587 * ira.c (build_insn_chain): Use DF_LR_OUT instead of df_get_live_out. * testsuite/gfortran.dg/pr40587.f: New test. From-SVN: r149213
This commit is contained in:
parent
ce80f42bc5
commit
6593a269e8
|
@ -1,3 +1,10 @@
|
|||
2009-07-03 Vladimir Makarov <vmakarov@redhat.com>
|
||||
|
||||
PR target/40587
|
||||
* ira.c (build_insn_chain): Use DF_LR_OUT instead of
|
||||
df_get_live_out.
|
||||
* testsuite/gfortran.dg/pr40587.f: New test.
|
||||
|
||||
2009-07-02 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
PR middle-end/40585
|
||||
|
|
|
@ -2794,14 +2794,14 @@ build_insn_chain (void)
|
|||
CLEAR_REG_SET (live_relevant_regs);
|
||||
memset (live_subregs_used, 0, max_regno * sizeof (int));
|
||||
|
||||
EXECUTE_IF_SET_IN_BITMAP (df_get_live_out (bb), 0, i, bi)
|
||||
EXECUTE_IF_SET_IN_BITMAP (DF_LR_OUT (bb), 0, i, bi)
|
||||
{
|
||||
if (i >= FIRST_PSEUDO_REGISTER)
|
||||
break;
|
||||
bitmap_set_bit (live_relevant_regs, i);
|
||||
}
|
||||
|
||||
EXECUTE_IF_SET_IN_BITMAP (df_get_live_out (bb),
|
||||
EXECUTE_IF_SET_IN_BITMAP (DF_LR_OUT (bb),
|
||||
FIRST_PSEUDO_REGISTER, i, bi)
|
||||
{
|
||||
if (pseudo_for_reload_consideration_p (i))
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
C PR traget/40587
|
||||
C { dg-do compile }
|
||||
C { dg-options "-O2" }
|
||||
subroutine TEST(i, r, result)
|
||||
implicit none
|
||||
integer i
|
||||
REAL*8 r
|
||||
REAL*8 result
|
||||
REAL*8 r2
|
||||
if(i.eq.0) then
|
||||
r2 = r
|
||||
else
|
||||
call ERROR()
|
||||
endif
|
||||
result = r2
|
||||
return
|
||||
end
|
Loading…
Reference in New Issue