1 /* { dg-do compile } */ 2 /* { dg-require-effective-target arm_dsp } */ 3 /* { dg-options "-O2" } */ 4 5 int foo(int x,int in1,int in2)6foo (int x, int in1, int in2) 7 { 8 short a = (in1 & 0xffff0000) >> 16; 9 short b = (in2 & 0xffff0000) >> 16; 10 11 return x + b * a; 12 } 13 14 /* { dg-final { scan-assembler "smlatt\\t" } } */ 15