[llvm-commits] CVS: llvm/test/Regression/Transforms/CodeExtractor/2004-03-14-DominanceProblem.ll
Chris Lattner
lattner at cs.uiuc.edu
Sun Mar 14 18:10:01 PST 2004
Changes in directory llvm/test/Regression/Transforms/CodeExtractor:
2004-03-14-DominanceProblem.ll added (r1.1)
---
Log message:
New testcase that causes the code extractor to generate bogus code.
---
Diffs of the changes: (+34 -0)
Index: llvm/test/Regression/Transforms/CodeExtractor/2004-03-14-DominanceProblem.ll
diff -c /dev/null llvm/test/Regression/Transforms/CodeExtractor/2004-03-14-DominanceProblem.ll:1.1
*** /dev/null Sun Mar 14 18:08:59 2004
--- llvm/test/Regression/Transforms/CodeExtractor/2004-03-14-DominanceProblem.ll Sun Mar 14 18:08:49 2004
***************
*** 0 ****
--- 1,34 ----
+ ; RUN: llvm-as < %s | opt -loop-extract -disable-output
+ ; This testcase is failing the loop extractor because not all exit blocks
+ ; are dominated by all of the live-outs.
+
+ implementation ; Functions:
+
+ int %ab(int %alpha, int %beta) {
+ entry:
+ br label %loopentry.1.preheader
+
+ loopentry.1.preheader: ; preds = %then.1
+ br label %loopentry.1
+
+ loopentry.1: ; preds = %loopentry.1.preheader, %no_exit.1
+ br bool false, label %no_exit.1, label %loopexit.0.loopexit1
+
+ no_exit.1: ; preds = %loopentry.1
+ %tmp.53 = load int* null ; <int> [#uses=1]
+ br bool false, label %shortcirc_next.2, label %loopentry.1
+
+ shortcirc_next.2: ; preds = %no_exit.1
+ %tmp.563 = call int %wins( int 0, int %tmp.53, int 3 ) ; <int> [#uses=0]
+ ret int 0
+
+ loopexit.0.loopexit1: ; preds = %loopentry.1
+ br label %loopexit.0
+
+ loopexit.0: ; preds = %loopexit.0.loopexit, %loopexit.0.loopexit1
+ ret int 0
+ }
+
+ declare int %wins(int, int, int)
+
+ declare ushort %ab_code()
More information about the llvm-commits
mailing list