1 int foo(int a, int b)
   2 {
   3         int x;
   4         int i;
   5 
   6         switch (a) {
   7         case  0: i = 0; break;
   8         case  1: i = 1; break;
   9         default: i = -1; break;
  10         }
  11 
  12         x = 0;
  13         if (b)
  14                 x = i;
  15         return x;
  16 }
  17 
  18 /*
  19  * check-name: broken-phi03
  20  * check-description:
  21  *      This is an indirect test to check correctness of phi-node placement.
  22  *      The misplaced phi-node for 'i' (not at the meet point but where 'i'
  23  *      is used) causes a missed select-conversion at later stage.
  24  *
  25  * check-command: test-linearize -Wno-decl $file
  26  * check-output-ignore
  27  * check-output-contains: select\\.
  28  */