diff options
author | Kugan Vivekanandarajah <kuganv@linaro.org> | 2018-10-29 00:03:20 +0000 |
---|---|---|
committer | Kugan Vivekanandarajah <kugan@gcc.gnu.org> | 2018-10-29 00:03:20 +0000 |
commit | 64f7ea7c546ff900eb7647b1726082007a7cd3a2 (patch) | |
tree | 144f8b42f63575422e934ff3c3ab7206e252bf9f /gcc/testsuite | |
parent | 881eaae68818cab0b3419482586174582c348ed7 (diff) | |
download | gcc-64f7ea7c546ff900eb7647b1726082007a7cd3a2.zip gcc-64f7ea7c546ff900eb7647b1726082007a7cd3a2.tar.gz gcc-64f7ea7c546ff900eb7647b1726082007a7cd3a2.tar.bz2 |
gimplefe-30.c: New test.
gcc/testsuite/ChangeLog:
2018-10-28 Kugan Vivekanandarajah <kuganv@linaro.org>
* gcc.dg/gimplefe-30.c: New test.
* gcc.dg/gimplefe-31.c: New test.
* gcc.dg/gimplefe-32.c: New test.
* gcc.dg/gimplefe-33.c: New test.
gcc/ChangeLog:
2018-10-28 Kugan Vivekanandarajah <kuganv@linaro.org>
* doc/generic.texi (ABSU_EXPR): Document.
* match.pd (absu(x)*absu(x) -> x*x): Handle.
(absu(absu(X)) -> absu(X)): Likewise.
(absu(-X) -> absu(X)): Likewise.
(absu(X) where X is nonnegative -> X): Likewise.
From-SVN: r265578
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/gimplefe-30.c | 16 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/gimplefe-31.c | 16 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/gimplefe-32.c | 14 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/gimplefe-33.c | 16 |
5 files changed, 69 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index e49edfb..40ea5a7 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2018-10-28 Kugan Vivekanandarajah <kuganv@linaro.org> + + * gcc.dg/gimplefe-30.c: New test. + * gcc.dg/gimplefe-31.c: New test. + * gcc.dg/gimplefe-32.c: New test. + * gcc.dg/gimplefe-33.c: New test. + 2018-10-28 Iain Buclaw <ibuclaw@gdcproject.org> * gcc.misc-tests/help.exp: Add D to option descriptions check. diff --git a/gcc/testsuite/gcc.dg/gimplefe-30.c b/gcc/testsuite/gcc.dg/gimplefe-30.c new file mode 100644 index 0000000..6c25106 --- /dev/null +++ b/gcc/testsuite/gcc.dg/gimplefe-30.c @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fgimple -fdump-tree-optimized" } */ + +unsigned int __GIMPLE() f(int a) +{ + unsigned int t0; + unsigned int t1; + unsigned int t2; + t0 = __ABSU a; + t1 = __ABSU a; + t2 = t0 * t1; + return t2; +} + + +/* { dg-final { scan-tree-dump-times "ABSU" 0 "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/gimplefe-31.c b/gcc/testsuite/gcc.dg/gimplefe-31.c new file mode 100644 index 0000000..a97d0dd --- /dev/null +++ b/gcc/testsuite/gcc.dg/gimplefe-31.c @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fgimple -fdump-tree-optimized" } */ + + +unsigned int __GIMPLE() f(int a) +{ + unsigned int t0; + int t1; + unsigned int t2; + t0 = __ABSU a; + t1 = (int) t0; + t2 = __ABSU t1; + return t2; +} + +/* { dg-final { scan-tree-dump-times "ABSU" 1 "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/gimplefe-32.c b/gcc/testsuite/gcc.dg/gimplefe-32.c new file mode 100644 index 0000000..9b3963c --- /dev/null +++ b/gcc/testsuite/gcc.dg/gimplefe-32.c @@ -0,0 +1,14 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fgimple -fdump-tree-optimized" } */ + +unsigned int __GIMPLE() f(int a) +{ + int t0; + unsigned int t1; + t0 = -a; + t1 = __ABSU a; + return t1; +} + + +/* { dg-final { scan-tree-dump-times "= -" 0 "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/gimplefe-33.c b/gcc/testsuite/gcc.dg/gimplefe-33.c new file mode 100644 index 0000000..4e49822 --- /dev/null +++ b/gcc/testsuite/gcc.dg/gimplefe-33.c @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fgimple -fdump-tree-optimized" } */ + +int __GIMPLE() f(int c) +{ + int D; + int _1; + unsigned int _2; + _1 = __ABS c; + _2 = __ABSU _1; + D = (int) _2; + return D; +} + + +/* { dg-final { scan-tree-dump-times "ABSU" 0 "optimized" } } */ |