diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/mips/mips-sched-madd.c')
-rw-r--r-- | gcc/testsuite/gcc.target/mips/mips-sched-madd.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/mips/mips-sched-madd.c b/gcc/testsuite/gcc.target/mips/mips-sched-madd.c new file mode 100644 index 000000000..c0f9d332a --- /dev/null +++ b/gcc/testsuite/gcc.target/mips/mips-sched-madd.c @@ -0,0 +1,19 @@ +/* Test for case where another independent multiply insn may interfere + with a macc chain. */ +/* { dg-do compile } */ +/* { dg-options "-Os -march=24kf" } */ + +NOMIPS16 int foo (int a, int b, int c, int d, int e, int f, int g) +{ + int temp; + int acc; + + acc = a * b; + temp = a * c; + acc = d * e + acc; + acc = f * g + acc; + return acc > temp ? acc : temp; +} + +/* { dg-final { scan-assembler "\tmult\t" } } */ +/* { dg-final { scan-assembler "\tmadd\t" } } */ |