aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2010-02-17 09:45:31 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2010-02-17 09:45:31 +0000
commita95740b328567bd230868acf86497ab0d302d946 (patch)
treef59e4cd8dc3ac4360c09eea55b5b907a3cdba747 /gcc
parent6832680673f05a91df9e902c808d809db73189a9 (diff)
downloadgcc-a95740b328567bd230868acf86497ab0d302d946.zip
gcc-a95740b328567bd230868acf86497ab0d302d946.tar.gz
gcc-a95740b328567bd230868acf86497ab0d302d946.tar.bz2
tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis to loop PHI nodes.
2010-02-17 Richard Guenther <rguenther@suse.de> * tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis to loop PHI nodes. From-SVN: r156825
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-vrp.c5
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 31f251d..e486fd0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 2f0f059..152d389 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -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)