1 /* PR tree-optimization/78819 */
2 /* { dg-do run } */
3 /* { dg-options "-O2" } */
4 
5 __attribute__((noinline, noclone)) void
foo(int argc)6 foo (int argc)
7 {
8   if (argc <= 0 || argc > 3)
9     return;
10 
11   switch (argc)
12     {
13     case 1:
14     case 3:
15       if (argc != 3)
16 	__builtin_abort ();
17       break;
18     case 2:
19       asm ("");
20       break;
21     default:
22       __builtin_abort ();
23     }
24 }
25 
26 int
main(void)27 main (void)
28 {
29   foo (3);
30   return 0;
31 }
32