Mercurial > hg > CbC > CbC_gcc
diff gcc/testsuite/gcc.dg/tree-ssa/pr45397.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line diff
--- a/gcc/testsuite/gcc.dg/tree-ssa/pr45397.c Fri Oct 27 22:46:09 2017 +0900 +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr45397.c Thu Oct 25 07:37:49 2018 +0900 @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O2 -fdump-tree-phiopt1" } */ +/* { dg-options "-O2 -fdump-tree-phiopt -fdump-tree-evrp" } */ int foo_add (const unsigned char *tmp, int i, int val) { @@ -18,6 +18,12 @@ /* All cases should end up using min/max for the saturated operations and have no control flow. */ -/* { dg-final { scan-tree-dump-times "MAX_EXPR" 3 "phiopt1" } } */ -/* { dg-final { scan-tree-dump-times "MIN_EXPR" 3 "phiopt1" } } */ -/* { dg-final { scan-tree-dump-not "if " "phiopt1" } } */ +/* EVRP leaves copies in the IL which confuses phiopt1 so we have + to rely on phiopt2 instead. */ +/* { dg-final { scan-tree-dump-not " & 255;" "evrp" } } */ +/* { dg-final { scan-tree-dump-times "MAX_EXPR" 3 "phiopt1" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-times "MIN_EXPR" 3 "phiopt1" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-not "if " "phiopt1" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-times "MAX_EXPR" 3 "phiopt2" } } */ +/* { dg-final { scan-tree-dump-times "MIN_EXPR" 3 "phiopt2" } } */ +/* { dg-final { scan-tree-dump-not "if " "phiopt2" } } */