diff options
author | Zdenek Dvorak <ook@ucw.cz> | 2007-08-31 17:34:45 +0200 |
---|---|---|
committer | Zdenek Dvorak <rakdver@gcc.gnu.org> | 2007-08-31 15:34:45 +0000 |
commit | 75b226408d2c03ebf1e2e15fa9fb93fcd7a2393d (patch) | |
tree | 8df14618b7117149a6bea167a45d74c3db740b67 | |
parent | beb32b5981c96e592c73126f3f1b89b848547fbe (diff) | |
download | gcc-75b226408d2c03ebf1e2e15fa9fb93fcd7a2393d.zip gcc-75b226408d2c03ebf1e2e15fa9fb93fcd7a2393d.tar.gz gcc-75b226408d2c03ebf1e2e15fa9fb93fcd7a2393d.tar.bz2 |
re PR rtl-optimization/33224 (failing rtl iv analysis (maybe due to df))
PR rtl-optimization/33224
* loop-iv.c (latch_dominating_def): Check that the definition belongs
to the analysed region.
From-SVN: r127996
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/loop-iv.c | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9156b9d..35696ce 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-08-31 Zdenek Dvorak <ook@ucw.cz> + + PR rtl-optimization/33224 + * loop-iv.c (latch_dominating_def): Check that the definition belongs + to the analysed region. + 2007-08-31 Richard Guenther <rguenther@suse.de> * function.c (allocate_struct_function): Do not set diff --git a/gcc/loop-iv.c b/gcc/loop-iv.c index 81e9a56..3e1b5db 100644 --- a/gcc/loop-iv.c +++ b/gcc/loop-iv.c @@ -301,7 +301,8 @@ latch_dominating_def (rtx reg, struct df_ref **def) for (adef = DF_REG_DEF_CHAIN (regno); adef; adef = adef->next_reg) { - if (!bitmap_bit_p (bb_info->out, DF_REF_ID (adef))) + if (!bitmap_bit_p (df->blocks_to_analyze, DF_REF_BB (adef)->index) + || !bitmap_bit_p (bb_info->out, DF_REF_ID (adef))) continue; /* More than one reaching definition. */ |