aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.target/arm/smlaltt-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.target/arm/smlaltt-1.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/arm/smlaltt-1.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/arm/smlaltt-1.c b/gcc-4.9/gcc/testsuite/gcc.target/arm/smlaltt-1.c
new file mode 100644
index 000000000..380e3d01b
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.target/arm/smlaltt-1.c
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target arm_dsp } */
+/* { dg-options "-O2" } */
+
+long long int
+foo (long long x, int in1, int in2)
+{
+ short a = (in1 & 0xffff0000) >> 16;
+ short b = (in2 & 0xffff0000) >> 16;
+
+ return x + b * a;
+}
+
+/* { dg-final { scan-assembler "smlaltt\\t" { xfail *-*-* } } } */