13883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher// RUN: %clang_cc1 -emit-llvm %s  -o /dev/null
23883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher
33883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher/* GCC was generating PHI nodes with an arity < #pred of the basic block the
43883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher * PHI node lived in.  This was breaking LLVM because the number of entries
53883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher * in a PHI node must equal the number of predecessors for a basic block.
63883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher */
73883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher
83883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopherint trys(char *s, int x)
93883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher{
103883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher  int asa;
113883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher  double Val;
123883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher  int LLS;
133883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher  if (x) {
143883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher    asa = LLS + asa;
153883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher  } else {
163883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher  }
173883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher  return asa+(int)Val;
183883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher}
193883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher
20