diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.target/frv/fr450-builtins-9.c')
-rw-r--r-- | gcc-4.9/gcc/testsuite/gcc.target/frv/fr450-builtins-9.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/frv/fr450-builtins-9.c b/gcc-4.9/gcc/testsuite/gcc.target/frv/fr450-builtins-9.c new file mode 100644 index 000000000..5f32ba281 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gcc.target/frv/fr450-builtins-9.c @@ -0,0 +1,23 @@ +/* Test a situation in which an M6 instruction (mdcutssi) and M4 instruction + (mqmulhu) can be issued together. */ +/* { dg-options "-O2 -mcpu=fr450" } */ +/* { dg-do compile } */ +/* { dg-final { scan-assembler "mqmulhu.p\[^\t\]*\t*mdcutssi" } } */ +extern void abort (void); +extern void exit (int); + +int +main () +{ + __MQMULHU (0, 0x0001001101111111ULL, 0x0001000200030004ULL); + __MQMULHU (8, 0x0002002202222222ULL, 0x0004000400040004ULL); + if (__MDCUTSSI (0, 8) + + __MDCUTSSI (2, 8) + + __MDCUTSSI (8, 8) + + __MDCUTSSI (10, 8) + != (0x0000000100000022ULL + 0x0000033300004444ULL + + 0x0000000800000088ULL + 0x0000088800008888ULL)) + abort (); + + exit (0); +} |