diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/arm/mla-1.c')
-rw-r--r-- | gcc/testsuite/gcc.target/arm/mla-1.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/arm/mla-1.c b/gcc/testsuite/gcc.target/arm/mla-1.c new file mode 100644 index 000000000..669647a55 --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/mla-1.c @@ -0,0 +1,22 @@ +/* { dg-do compile } */ +/* { dg-skip-if "" { arm_thumb1 } { "*" } { "" } } */ +/* { dg-options "-O2" } */ + + +int +foo (int *p, int *q) +{ + int i; + int accum = 0; + + for (i = 0 ; i < 1024; i++) + { + accum += ((*p--) * (*q++)); + accum += 4096; + accum >>= 13 ; + } + + return accum; +} + +/* { dg-final { scan-assembler "mla" } } */ |