diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/arc/add_f.c')
-rw-r--r-- | gcc/testsuite/gcc.target/arc/add_f.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/arc/add_f.c b/gcc/testsuite/gcc.target/arc/add_f.c new file mode 100644 index 00000000000..ebda0468a0b --- /dev/null +++ b/gcc/testsuite/gcc.target/arc/add_f.c @@ -0,0 +1,29 @@ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ +int +f (int a, int b, int c) +{ + if (a+b) + c = 1; + return c; +} + +int +g (unsigned a, unsigned b) +{ + if (a + b < a) + return 43; + return 42; +} + +int +h (unsigned a, unsigned b) +{ + if (a + b < b) + return 43; + return 42; +} +/* { dg-final { scan-assembler-times "add\.f\[ \t\]+0," 3 } } */ +/* { dg-final { scan-assembler "mov\.eq\[ \t\]" } } */ +/* { dg-final { scan-assembler-times "mov\.(hs|lo)\[ \t\]" 2 } } */ +/* { dg-final { scan-assembler "mov\.(hs|lo)\[ \t\]" } } */ |