1 /* Test a situation in which an M6 instruction (mdcutssi) and M4 instruction
2    (mqmulhu) can be issued together.  */
3 /* { dg-options "-O2 -mcpu=fr450" } */
4 /* { dg-do compile } */
5 /* { dg-final { scan-assembler "mqmulhu.p\[^\t\]*\t*mdcutssi" } } */
6 extern void abort (void);
7 extern void exit (int);
8 
9 int
main()10 main ()
11 {
12   __MQMULHU (0, 0x0001001101111111ULL, 0x0001000200030004ULL);
13   __MQMULHU (8, 0x0002002202222222ULL, 0x0004000400040004ULL);
14   if (__MDCUTSSI (0, 8)
15       + __MDCUTSSI (2, 8)
16       + __MDCUTSSI (8, 8)
17       + __MDCUTSSI (10, 8)
18       != (0x0000000100000022ULL + 0x0000033300004444ULL
19 	  + 0x0000000800000088ULL + 0x0000088800008888ULL))
20     abort ();
21 
22   exit (0);
23 }
24