re PR tree-optimization/18763 (Gcc failed to bootstrap with --disable-checking)
authorAndrew Pinski <pinskia@physics.uc.edu>
Wed, 1 Dec 2004 23:53:17 +0000 (23:53 +0000)
committerAndrew Pinski <pinskia@gcc.gnu.org>
Wed, 1 Dec 2004 23:53:17 +0000 (15:53 -0800)
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

gcc/ChangeLog
gcc/tree-ssa-alias.c

index f217947d4aa35338d809ca5225a34f64a0cc5688..d997f41301e7c0453c7c1639b6aec948623af1dc 100644 (file)
@@ -1,3 +1,10 @@
+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.
+
 2004-12-01  Mark Mitchell  <mark@codesourcery.com>
 
        * Makefile.in (WERROR): New variable.
index 37ea0f25290b7c1435bf8c095be45d09d05387d0..35f05d3cde6946c5cdc40aab387330ab8a419082 100644 (file)
@@ -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.  */