Mercurial > hg > CbC > CbC_llvm
diff test/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll @ 0:95c75e76d11b LLVM3.4
LLVM 3.4
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 12 Dec 2013 13:56:28 +0900 |
parents | |
children | 803732b1fca8 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll Thu Dec 12 13:56:28 2013 +0900 @@ -0,0 +1,35 @@ +; 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: opt < %s -adce + +target datalayout = "e-p:32:32" + +define void @dead_test8() { +entry: + br label %loopentry + +loopentry: ; preds = %endif, %entry + %k.1 = phi i32 [ %k.0, %endif ], [ 0, %entry ] ; <i32> [#uses=1] + br i1 false, label %no_exit, label %return + +no_exit: ; preds = %loopentry + br i1 false, label %then, label %else + +then: ; preds = %no_exit + br label %endif + +else: ; preds = %no_exit + %dec = add i32 %k.1, -1 ; <i32> [#uses=1] + br label %endif + +endif: ; preds = %else, %then + %k.0 = phi i32 [ %dec, %else ], [ 0, %then ] ; <i32> [#uses=1] + store i32 2, i32* null + br label %loopentry + +return: ; preds = %loopentry + ret void +} +