aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2016-02-04 09:57:36 +0000
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>2016-02-04 09:57:36 +0000
commitcc9c0829f714743c1212451883d0302dbef47fd0 (patch)
treeaaa2888227f5bde720c67a0eca63bd47ff581d40
parent625d55afc196456f1d04819c07a3c59806a2401e (diff)
downloadgcc-cc9c0829f714743c1212451883d0302dbef47fd0.zip
gcc-cc9c0829f714743c1212451883d0302dbef47fd0.tar.gz
gcc-cc9c0829f714743c1212451883d0302dbef47fd0.tar.bz2
[ARM][4/4] Adjust gcc.target/arm/wmul-[123].c tests
PR target/65932 PR target/67714 * gcc.target/arm/wmul-3.c: Simplify test to generate just a single smulbb instruction. * gcc.target/amr/wmul-1.c: Add -mtune=cortex-a9 to dg-options. * gcc.target/amr/wmul-2.c: Likewise. From-SVN: r233134
-rw-r--r--gcc/testsuite/ChangeLog9
-rw-r--r--gcc/testsuite/gcc.target/arm/wmul-1.c2
-rw-r--r--gcc/testsuite/gcc.target/arm/wmul-2.c2
-rw-r--r--gcc/testsuite/gcc.target/arm/wmul-3.c18
4 files changed, 16 insertions, 15 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 5fca8e7..0b65ce8 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -2,6 +2,15 @@
PR target/65932
PR target/67714
+ * gcc.target/arm/wmul-3.c: Simplify test to generate just
+ a single smulbb instruction.
+ * gcc.target/amr/wmul-1.c: Add -mtune=cortex-a9 to dg-options.
+ * gcc.target/amr/wmul-2.c: Likewise.
+
+2016-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ PR target/65932
+ PR target/67714
* gcc.c-torture/execute/pr67714.c: New test.
2016-02-04 Ilya Enkovich <enkovich.gnu@gmail.com>
diff --git a/gcc/testsuite/gcc.target/arm/wmul-1.c b/gcc/testsuite/gcc.target/arm/wmul-1.c
index ddddd50..c340f96 100644
--- a/gcc/testsuite/gcc.target/arm/wmul-1.c
+++ b/gcc/testsuite/gcc.target/arm/wmul-1.c
@@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target arm_dsp } */
-/* { dg-options "-O1 -fexpensive-optimizations" } */
+/* { dg-options "-O1 -fexpensive-optimizations -mtune=cortex-a9" } */
int mac(const short *a, const short *b, int sqr, int *sum)
{
diff --git a/gcc/testsuite/gcc.target/arm/wmul-2.c b/gcc/testsuite/gcc.target/arm/wmul-2.c
index 2ea55f9..bd2435c 100644
--- a/gcc/testsuite/gcc.target/arm/wmul-2.c
+++ b/gcc/testsuite/gcc.target/arm/wmul-2.c
@@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-require-effective-target arm_dsp } */
-/* { dg-options "-O1 -fexpensive-optimizations" } */
+/* { dg-options "-O1 -fexpensive-optimizations -mtune=cortex-a9" } */
void vec_mpy(int y[], const short x[], short scaler)
{
diff --git a/gcc/testsuite/gcc.target/arm/wmul-3.c b/gcc/testsuite/gcc.target/arm/wmul-3.c
index 144b553..87eba74 100644
--- a/gcc/testsuite/gcc.target/arm/wmul-3.c
+++ b/gcc/testsuite/gcc.target/arm/wmul-3.c
@@ -1,19 +1,11 @@
/* { dg-do compile } */
/* { dg-require-effective-target arm_dsp } */
-/* { dg-options "-O1 -fexpensive-optimizations" } */
+/* { dg-options "-O" } */
-int mac(const short *a, const short *b, int sqr, int *sum)
+int
+foo (int a, int b)
{
- int i;
- int dotp = *sum;
-
- for (i = 0; i < 150; i++) {
- dotp -= b[i] * a[i];
- sqr -= b[i] * b[i];
- }
-
- *sum = dotp;
- return sqr;
+ return (short) a * (short) b;
}
-/* { dg-final { scan-assembler-times "smulbb" 2 } } */
+/* { dg-final { scan-assembler-times "smulbb" 1 } } */