diff --git a/test/CFrontend/2002-03-14-BrokenPHINode.c b/test/CFrontend/2002-03-14-BrokenPHINode.c new file mode 100644 index 00000000000..8ab61b8574f --- /dev/null +++ b/test/CFrontend/2002-03-14-BrokenPHINode.c @@ -0,0 +1,17 @@ +/* GCC was generating PHI nodes with an arity < #pred of the basic block the + * PHI node lived in. This was breaking LLVM because the number of entries + * in a PHI node must equal the number of predecessors for a basic block. + */ + +int trys(char *s, int x) +{ + int asa; + double Val; + int LLS; + if (x) { + asa = LLS + asa; + } else { + } + return asa+(int)Val; +} +