2010-02-17 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 17 Feb 2010 09:45:31 +0000 (09:45 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 17 Feb 2010 09:45:31 +0000 (09:45 +0000)
* tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
to loop PHI nodes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156825 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/tree-vrp.c

index 31f251d..e486fd0 100644 (file)
@@ -1,3 +1,8 @@
+2010-02-17  Richard Guenther  <rguenther@suse.de>
+
+       * tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
+       to loop PHI nodes.
+
 2010-02-17  Jakub Jelinek  <jakub@redhat.com>
 
        PR debug/42918
index 2f0f059..152d389 100644 (file)
@@ -6318,11 +6318,10 @@ vrp_visit_phi_node (gimple phi)
     }
 
   /* If this is a loop PHI node SCEV may known more about its
-     value-range.
-     ???  Identify loop PHI nodes properly.   */
+     value-range.  */
   if (current_loops
       && (l = loop_containing_stmt (phi))
-      && loop_outer (l))
+      && l->header == gimple_bb (phi))
     adjust_range_with_scev (&vr_result, l, phi, lhs);
 
   if (vr_result.type == VR_VARYING)