summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2008-06-18 02:16:38 +0000
committerDevang Patel <dpatel@apple.com>2008-06-18 02:16:38 +0000
commitcd6b6979453eeb783a4118e6c8e172db10a596b1 (patch)
tree43fc91ae46981ad69e84179f0746377299f72879 /llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll
parent772a008738efbedfc8e4a80711cd8bfa1a619774 (diff)
downloadbcm5719-llvm-cd6b6979453eeb783a4118e6c8e172db10a596b1.tar.gz
bcm5719-llvm-cd6b6979453eeb783a4118e6c8e172db10a596b1.zip
Preserve dominance frontier while trivially unswitching loop.
llvm-svn: 52438
Diffstat (limited to 'llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll')
-rw-r--r--llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll22
1 files changed, 22 insertions, 0 deletions
diff --git a/llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll b/llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll
new file mode 100644
index 00000000000..713a0bddb13
--- /dev/null
+++ b/llvm/test/Transforms/LoopUnswitch/2008-06-17-DomFrontier.ll
@@ -0,0 +1,22 @@
+; RUN: llvm-as < %s | opt -licm -loop-unswitch -disable-output
+@g_56 = external global i16 ; <i16*> [#uses=2]
+
+define i32 @func_67(i32 %p_68, i8 signext %p_69, i8 signext %p_71) nounwind {
+entry:
+ br label %bb
+bb: ; preds = %bb44, %entry
+ br label %bb3
+bb3: ; preds = %bb36, %bb
+ %bothcond = or i1 false, false ; <i1> [#uses=1]
+ br i1 %bothcond, label %bb29, label %bb19
+bb19: ; preds = %bb3
+ br i1 false, label %bb36, label %bb29
+bb29: ; preds = %bb19, %bb3
+ ret i32 0
+bb36: ; preds = %bb19
+ store i16 0, i16* @g_56, align 2
+ br i1 false, label %bb44, label %bb3
+bb44: ; preds = %bb44, %bb36
+ %tmp46 = load i16* @g_56, align 2 ; <i16> [#uses=0]
+ br i1 false, label %bb, label %bb44
+}
OpenPOWER on IntegriCloud