Viewing file: ccmp_1.c (1.4 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* { dg-do compile } */ /* { dg-options "-O2 -ffinite-math-only" } */
int f1 (int a) { return a == 17 || a == 32; }
int f2 (int a) { return a == 33 || a == 18; }
int f3 (int a, int b) { return a == 19 && b == 34; }
int f4 (int a, int b) { return a == 35 && b == 20; }
int f5 (int a) { return a == 0 || a == 5; }
int f6 (int a) { return a == 6 || a == 0; }
int f7 (int a, int b) { return a == 0 && b == 7; }
int f8 (int a, int b) { return a == 9 && b == 0; }
int f9 (float a, float b) { return a < 0.0f && a > b; }
int f10 (float a, float b) { return a == b || b == 0.0f; }
int f11 (double a, int b) { return a < 0.0f && b == 30; }
int f12 (double a, int b) { return b == 31 || a == 0.0f; }
int f13 (int a, int b) { a += b; return a == 3 || a == 0; }
/* { dg-final { scan-assembler "cmp\t(.)+32" } } */ /* { dg-final { scan-assembler "cmp\t(.)+33" } } */ /* { dg-final { scan-assembler "cmp\t(.)+34" } } */ /* { dg-final { scan-assembler "cmp\t(.)+35" } } */
/* { dg-final { scan-assembler-times "\tcmp\tw\[0-9\]+, 0" 4 } } */ /* { dg-final { scan-assembler-times "fcmpe\t(.)+0\\.0" 2 } } */ /* { dg-final { scan-assembler-times "fcmp\t(.)+0\\.0" 2 } } */
/* { dg-final { scan-assembler "adds\t" } } */ /* { dg-final { scan-assembler-times "\tccmp\t" 11 } } */ /* { dg-final { scan-assembler-times "fccmp\t.*0\\.0" 1 } } */ /* { dg-final { scan-assembler-times "fccmpe\t.*0\\.0" 1 } } */
|