When folding all stmts we can end up canonicalizing operand order correctly which breaks at least the following two testcases.
Fixed by making their expected outcome more robust. Tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-10-20 Richard Biener <rguent...@suse.de> * gcc.dg/tree-ssa/slsr-19.c: Make robust against operand order changes. * gcc.dg/tree-ssa/reassoc-20.c: Likewise. Index: gcc/testsuite/gcc.dg/tree-ssa/slsr-19.c =================================================================== --- gcc/testsuite/gcc.dg/tree-ssa/slsr-19.c (revision 216463) +++ gcc/testsuite/gcc.dg/tree-ssa/slsr-19.c (working copy) @@ -16,7 +16,7 @@ f (int c, int s) return x1 + x2; } -/* { dg-final { scan-tree-dump-times " \\* y" 1 "optimized" } } */ -/* { dg-final { scan-tree-dump-times " \\* 2" 1 "optimized" } } */ +/* { dg-final { scan-tree-dump-times " \\* " 2 "optimized" } } */ +/* { dg-final { scan-tree-dump-times " \\* 2;" 1 "optimized" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */ Index: gcc/testsuite/gcc.dg/tree-ssa/reassoc-20.c =================================================================== --- gcc/testsuite/gcc.dg/tree-ssa/reassoc-20.c (revision 216463) +++ gcc/testsuite/gcc.dg/tree-ssa/reassoc-20.c (working copy) @@ -15,6 +15,6 @@ int main(void) printf ("%d %d\n", e, f); } -/* { dg-final { scan-tree-dump-times "b.._. \\\+ a.._." 1 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "\[ab\].._. \\\+ \[ab\].._." 1 "optimized" } } */ /* { dg-final { scan-tree-dump-times " \\\+ " 2 "optimized" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */