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