As noted in PR56900, the new vrp87 test does not work on some targets as the code ultimately fed to vrp is dependent on BRANCH_COST.
I scanned all the backends for those which use the default BRANCH_COST, which is known to perturb the code in a way that VRP can't see the optimization opportunity. For each of those targets this patch simply avoids running the test.
Spot checked v850 & m68k (default BRANCH_COST, should not run) and x86 (should run).
Installed as obvious. JEff
commit 9613e7e3cf45587992a3aacc93e83591f5922b55 Author: Jeff Law <l...@redhat.com> Date: Thu Apr 11 07:50:08 2013 -0600 * gcc.dg/tree-ssa/vrp87.c: Do not run test on various targets. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 58447db..4b3310c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2013-04-11 Jeff Law <l...@redhat.com> + + * gcc.dg/tree-ssa/vrp87.c: Do not run test on various targets. + 2013-04-11 Paolo Carlini <paolo.carl...@oracle.com> PR c++/56913 diff --git a/gcc/testsuite/gcc.dg/tree-ssa/vrp87.c b/gcc/testsuite/gcc.dg/tree-ssa/vrp87.c index 7feff81..c8e4571 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/vrp87.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/vrp87.c @@ -1,4 +1,5 @@ -/* { dg-do compile } */ +/* { dg-do compile { target { ! "m68k*-*-* mmix*-*-* mep*-*-* bfin*-*-* v850*-*-* picochip*-*-* moxie*-*-* cris*-*-* m32c*-*-* fr30*-*-* mcore*-*-*"} } } */ + /* { dg-options "-O2 -fdump-tree-vrp2-details -fdump-tree-cddce2-details" } */ struct bitmap_head_def;