Skip to content

Commit 8f70c9b

Browse files
author
Max Kazantsev
committed
[NFC] Add failing test on LCSSA form preservation of LoopSimplifyCFG
llvm-svn: 350119
1 parent 1ea98f0 commit 8f70c9b

File tree

1 file changed

+25
-0
lines changed
  • llvm/test/Transforms/LoopSimplifyCFG

1 file changed

+25
-0
lines changed

llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll

+25
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2+
; REQUIRES: asserts
23
; RUN: opt -S -enable-loop-simplifycfg-term-folding=true -loop-simplifycfg -verify-loop-info -verify-dom-info -verify-loop-lcssa < %s | FileCheck %s
34
; RUN: opt -S -enable-loop-simplifycfg-term-folding=true -passes='require<domtree>,loop(simplify-cfg)' -verify-loop-info -verify-dom-info -verify-loop-lcssa < %s | FileCheck %s
45
; RUN: opt -S -enable-loop-simplifycfg-term-folding=true -loop-simplifycfg -enable-mssa-loop-dependency=true -verify-memoryssa -verify-loop-info -verify-dom-info -verify-loop-lcssa < %s | FileCheck %s
6+
; XFAIL: *
7+
; test_01 is currently failing because the loop is not in LCSSA form after the
8+
; transform.
59

610
target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
711

@@ -50,3 +54,24 @@ if.end.7: ; preds = %if.end
5054
if.end.8: ; preds = %if.end.7
5155
br label %for.cond
5256
}
57+
58+
define void @test_01() {
59+
entry:
60+
br label %for.cond
61+
62+
for.cond.loopexit: ; preds = %while.cond
63+
%inc41.lcssa = phi i16 [ %inc41, %while.cond ]
64+
br label %for.cond
65+
66+
for.cond: ; preds = %for.cond.loopexit, %entry
67+
%inc41.lcssa3 = phi i16 [ %inc41.lcssa, %for.cond.loopexit ], [ undef, %entry ]
68+
br label %while.cond
69+
70+
while.cond: ; preds = %while.body, %for.cond
71+
%inc41 = phi i16 [ %inc4, %while.body ], [ %inc41.lcssa3, %for.cond ]
72+
br i1 true, label %while.body, label %for.cond.loopexit
73+
74+
while.body: ; preds = %while.cond
75+
%inc4 = add nsw i16 %inc41, 1
76+
br label %while.cond
77+
}

0 commit comments

Comments
 (0)