This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch] for PR 24762
- From: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- To: gcc-patches at gcc dot gnu dot org
- Date: Thu, 9 Feb 2006 23:33:57 +0100
- Subject: [patch] for PR 24762
Hello,
there is a pasto in the fix for PR 24762 as merged from dataflow branch
-- incorrect registers are recorded for eh edges. Bootstrapped &
regtested on ia64, commited as obvious.
Zdenek
PR rtl-optimization/24762
* df-scan.c (df_bb_refs_record): Record correct
registers defined on eh edges.
Index: df-scan.c
===================================================================
*** df-scan.c (revision 110773)
--- df-scan.c (working copy)
*************** df_bb_refs_record (struct dataflow *dflo
*** 1571,1577 ****
unsigned regno = EH_RETURN_DATA_REGNO (i);
if (regno == INVALID_REGNUM)
break;
! df_ref_record (dflow, regno_reg_rtx[i], ®no_reg_rtx[i], bb, NULL,
DF_REF_REG_DEF, DF_REF_ARTIFICIAL | DF_REF_AT_TOP,
false);
}
--- 1571,1578 ----
unsigned regno = EH_RETURN_DATA_REGNO (i);
if (regno == INVALID_REGNUM)
break;
! df_ref_record (dflow, regno_reg_rtx[regno], ®no_reg_rtx[regno],
! bb, NULL,
DF_REF_REG_DEF, DF_REF_ARTIFICIAL | DF_REF_AT_TOP,
false);
}