From: Kugan Vivekanandarajah Date: Wed, 18 May 2016 07:50:05 +0000 (+0000) Subject: Adding the testcase which was not addaed as part of r236356. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f38748638a7de7e10884f68f89b4f660cd15fecc;p=gcc.git Adding the testcase which was not addaed as part of r236356. gcc/testsuite/ChangeLog: 2016-05-17 Kugan Vivekanandarajah PR middle-end/63586 * gcc.dg/tree-ssa/pr63586-2.c: New test. * gcc.dg/tree-ssa/pr63586.c: New test. From-SVN: r236359 --- diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr63586-2.c b/gcc/testsuite/gcc.dg/tree-ssa/pr63586-2.c new file mode 100644 index 00000000000..0dcfe327358 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr63586-2.c @@ -0,0 +1,32 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -ffast-math -fdump-tree-reassoc1" } */ + +float f1_float (float x, float z) +{ + float y = x + z; + y = y + x; + y = y + x; + y = y + x; + y = y + x; + y = y + x; + y = y + x; + y = y + x; + return y; +} + +float f1_float2 (float x) +{ + float y = x + 3 * x + x; + return y; +} + +int f1_int (int x) +{ + int y = x + 4 * x + x; + return y; +} + +/* { dg-final { scan-tree-dump-times "\\\* 8\\\.0e\\\+0" 1 "reassoc1" } } */ +/* { dg-final { scan-tree-dump-times "\\\* 5\\\.0e\\\+0" 1 "reassoc1" } } */ +/* { dg-final { scan-tree-dump-times "\\\* 6" 1 "reassoc1" } } */ + diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr63586.c b/gcc/testsuite/gcc.dg/tree-ssa/pr63586.c new file mode 100644 index 00000000000..470be8cea9e --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr63586.c @@ -0,0 +1,70 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -fdump-tree-reassoc1" } */ + +unsigned f1 (unsigned x, unsigned z) +{ + unsigned y = x + z; + y = y + x; + y = y + x; + y = y + x; + y = y + x; + y = y + x; + y = y + x; + return y; +} + +/* { dg-final { scan-tree-dump-times "\\\* 7" 1 "reassoc1" } } */ + +unsigned f2 (unsigned x, unsigned z) +{ + unsigned y = x + z; + y = y + x; + y = y + x; + y = y + x; + y = y + z; + y = y + z; + y = y + z; + y = y + z; + return y; +} + +/* { dg-final { scan-tree-dump-times "\\\* 5" 1 "reassoc1" } } */ +/* { dg-final { scan-tree-dump-times "\\\* 4" 1 "reassoc1" } } */ + +unsigned f3 (unsigned x, unsigned z, unsigned k) +{ + unsigned y = x + z; + y = y + x; + y = y + z; + y = y + z; + y = y + k; + return y; +} + +/* { dg-final { scan-tree-dump-times "\\\* 2" 1 "reassoc1" } } */ +/* { dg-final { scan-tree-dump-times "\\\* 3" 1 "reassoc1" } } */ + +unsigned f4 (unsigned x, unsigned z, unsigned k) +{ + unsigned y = k + x; + y = y + z; + y = y + z; + y = y + z; + y = y + z; + y = y + z; + y = y + z; + y = y + z; + y = y + z; + return y; +} +/* { dg-final { scan-tree-dump-times "\\\* 8" 1 "reassoc1" } } */ + +unsigned f5 (unsigned x, unsigned y, unsigned z) +{ + return x + y + y + y + y + y \ + + y + z + z + z + z + z + z + z + z + z; +} + +/* { dg-final { scan-tree-dump-times "\\\* 6" 1 "reassoc1" } } */ +/* { dg-final { scan-tree-dump-times "\\\* 9" 1 "reassoc1" } } */ +