[llvm-commits] CVS: llvm/test/Regression/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll
Chris Lattner
lattner at cs.uiuc.edu
Fri Apr 25 17:54:01 PDT 2003
Changes in directory llvm/test/Regression/Transforms/ADCE:
2003-04-25-PHIPostDominateProblem.ll added (r1.1)
---
Log message:
New testcase
---
Diffs of the changes:
Index: llvm/test/Regression/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll
diff -c /dev/null llvm/test/Regression/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll:1.1
*** /dev/null Fri Apr 25 17:53:23 2003
--- llvm/test/Regression/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll Fri Apr 25 17:53:12 2003
***************
*** 0 ****
--- 1,37 ----
+ ; THis testcase caused an assertion failure because a PHI node did not have
+ ; entries for it's postdominator. But I think this can only happen when the
+ ; PHI node is dead, so we just avoid patching up dead PHI nodes.
+
+ ; RUN: as < %s | opt -adce
+
+ target endian = little
+ target pointersize = 32
+
+ implementation ; Functions:
+
+ void %dead_test8() {
+ entry: ; No predecessors!
+ br label %loopentry
+
+ loopentry: ; preds = %entry, %endif
+ %k.1 = phi int [ %k.0, %endif ], [ 0, %entry ] ; <int> [#uses=1]
+ br bool false, label %no_exit, label %return
+
+ no_exit: ; preds = %loopentry
+ br bool false, label %then, label %else
+
+ then: ; preds = %no_exit
+ br label %endif
+
+ else: ; preds = %no_exit
+ %dec = add int %k.1, -1 ; <int> [#uses=1]
+ br label %endif
+
+ endif: ; preds = %else, %then
+ %k.0 = phi int [ %dec, %else ], [ 0, %then ] ; <int> [#uses=1]
+ store int 2, int* null
+ br label %loopentry
+
+ return: ; preds = %loopentry
+ ret void
+ }
More information about the llvm-commits
mailing list