1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 
4 long long r;
5 
test_signed(int a,int b)6 void test_signed (int a, int b)
7 {
8   /* { dg-final { scan-assembler "smnegl\tx\[0-9\]*, w\[0-9\]*, w\[0-9\]*\n" } } */
9   r = (-((long long) a)) * ((long long) b);
10 }
11 
test_unsigned(unsigned int a,unsigned int b)12 void test_unsigned (unsigned int a, unsigned int b)
13 {
14   /* { dg-final { scan-assembler "umnegl\tx\[0-9\]*, w\[0-9\]*, w\[0-9\]*\n" } } */
15   r = (-((long long) a)) * ((long long) b);
16 }
17