aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-alias.c
diff options
context:
space:
mode:
authorAndrew Pinski <pinskia@physics.uc.edu>2004-12-01 23:53:17 +0000
committerAndrew Pinski <pinskia@gcc.gnu.org>2004-12-01 15:53:17 -0800
commita912a223f3476de2f977aebd5ba56dc646ba1e6d (patch)
treed20718a1b54582951b18adc9911e49dafb1afaca /gcc/tree-ssa-alias.c
parent9098b4e6ddf24c4b7cfd42e400bdbac6d658637e (diff)
downloadgcc-a912a223f3476de2f977aebd5ba56dc646ba1e6d.zip
gcc-a912a223f3476de2f977aebd5ba56dc646ba1e6d.tar.gz
gcc-a912a223f3476de2f977aebd5ba56dc646ba1e6d.tar.bz2
re PR tree-optimization/18763 (Gcc failed to bootstrap with --disable-checking)
2004-12-01 Andrew Pinski <pinskia@physics.uc.edu> PR tree-opt/18763 PR tree-opt/18746 * tree-ssa-alias.c (init_alias_info): Get statement operands for all the statements if aliases_computed_p is true. From-SVN: r91589
Diffstat (limited to 'gcc/tree-ssa-alias.c')
-rw-r--r--gcc/tree-ssa-alias.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index 37ea0f2..35f05d3 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -438,6 +438,20 @@ init_alias_info (void)
{
unsigned i;
bitmap_iterator bi;
+ basic_block bb;
+
+ /* Make sure that every statement has a valid set of operands.
+ If a statement needs to be scanned for operands while we
+ compute aliases, it may get erroneous operands because all
+ the alias relations are not built at that point.
+ FIXME: This code will become obsolete when operands are not
+ lazily updated. */
+ FOR_EACH_BB (bb)
+ {
+ block_stmt_iterator si;
+ for (si = bsi_start (bb); !bsi_end_p (si); bsi_next (&si))
+ get_stmt_operands (bsi_stmt (si));
+ }
/* Clear the call-clobbered set. We are going to re-discover
call-clobbered variables. */