diff options
author | Zdenek Dvorak <dvorakz@suse.cz> | 2006-02-09 23:34:23 +0100 |
---|---|---|
committer | Zdenek Dvorak <rakdver@gcc.gnu.org> | 2006-02-09 22:34:23 +0000 |
commit | 95c029c30c717127d0120154eff20232ecb9f3c8 (patch) | |
tree | c4fa880b360877328514c1b78464f12e7f889b1d /gcc/df-scan.c | |
parent | 9a2ef6b84822979f32c7279952c163bf0efac0af (diff) | |
download | gcc-95c029c30c717127d0120154eff20232ecb9f3c8.zip gcc-95c029c30c717127d0120154eff20232ecb9f3c8.tar.gz gcc-95c029c30c717127d0120154eff20232ecb9f3c8.tar.bz2 |
re PR rtl-optimization/24762 ([killloop-branch] code motion of non-invariant expressions with hard registers.)
PR rtl-optimization/24762
* df-scan.c (df_bb_refs_record): Record correct registers defined on
eh edges.
From-SVN: r110815
Diffstat (limited to 'gcc/df-scan.c')
-rw-r--r-- | gcc/df-scan.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/df-scan.c b/gcc/df-scan.c index e6460fa..934f98d 100644 --- a/gcc/df-scan.c +++ b/gcc/df-scan.c @@ -1571,7 +1571,8 @@ df_bb_refs_record (struct dataflow *dflow, basic_block bb) 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_record (dflow, regno_reg_rtx[regno], ®no_reg_rtx[regno], + bb, NULL, DF_REF_REG_DEF, DF_REF_ARTIFICIAL | DF_REF_AT_TOP, false); } |