aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorKugan Vivekanandarajah <kuganv@linaro.org>2018-10-29 00:03:20 +0000
committerKugan Vivekanandarajah <kugan@gcc.gnu.org>2018-10-29 00:03:20 +0000
commit64f7ea7c546ff900eb7647b1726082007a7cd3a2 (patch)
tree144f8b42f63575422e934ff3c3ab7206e252bf9f /gcc/testsuite
parent881eaae68818cab0b3419482586174582c348ed7 (diff)
downloadgcc-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/ChangeLog7
-rw-r--r--gcc/testsuite/gcc.dg/gimplefe-30.c16
-rw-r--r--gcc/testsuite/gcc.dg/gimplefe-31.c16
-rw-r--r--gcc/testsuite/gcc.dg/gimplefe-32.c14
-rw-r--r--gcc/testsuite/gcc.dg/gimplefe-33.c16
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" } } */