xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGen/2002-03-14-BrokenPHINode.c (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -emit-llvm %s  -o /dev/null
2*f4a2713aSLionel Sambuc 
3*f4a2713aSLionel Sambuc /* GCC was generating PHI nodes with an arity < #pred of the basic block the
4*f4a2713aSLionel Sambuc  * PHI node lived in.  This was breaking LLVM because the number of entries
5*f4a2713aSLionel Sambuc  * in a PHI node must equal the number of predecessors for a basic block.
6*f4a2713aSLionel Sambuc  */
7*f4a2713aSLionel Sambuc 
trys(char * s,int x)8*f4a2713aSLionel Sambuc int trys(char *s, int x)
9*f4a2713aSLionel Sambuc {
10*f4a2713aSLionel Sambuc   int asa;
11*f4a2713aSLionel Sambuc   double Val;
12*f4a2713aSLionel Sambuc   int LLS;
13*f4a2713aSLionel Sambuc   if (x) {
14*f4a2713aSLionel Sambuc     asa = LLS + asa;
15*f4a2713aSLionel Sambuc   } else {
16*f4a2713aSLionel Sambuc   }
17*f4a2713aSLionel Sambuc   return asa+(int)Val;
18*f4a2713aSLionel Sambuc }
19*f4a2713aSLionel Sambuc 
20