diff options
author | Max Kazantsev <max.kazantsev@azul.com> | 2018-12-28 10:43:37 +0000 |
---|---|---|
committer | Max Kazantsev <max.kazantsev@azul.com> | 2018-12-28 10:43:37 +0000 |
commit | 8f70c9bf49fe56d34c8c176ec5c565acf7cbdfc9 (patch) | |
tree | 613cf9dff40cc2b17eb79459b49b7b54135df414 | |
parent | 1ea98f040ea4281878bdd6474af6aab3462735f9 (diff) | |
download | bcm5719-llvm-8f70c9bf49fe56d34c8c176ec5c565acf7cbdfc9.tar.gz bcm5719-llvm-8f70c9bf49fe56d34c8c176ec5c565acf7cbdfc9.zip |
[NFC] Add failing test on LCSSA form preservation of LoopSimplifyCFG
llvm-svn: 350119
-rw-r--r-- | llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll b/llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll index 82920f15304..032b12a755b 100644 --- a/llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll +++ b/llvm/test/Transforms/LoopSimplifyCFG/lcssa.ll @@ -1,7 +1,11 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py +; REQUIRES: asserts ; RUN: opt -S -enable-loop-simplifycfg-term-folding=true -loop-simplifycfg -verify-loop-info -verify-dom-info -verify-loop-lcssa < %s | FileCheck %s ; 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 ; 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 +; XFAIL: * +; test_01 is currently failing because the loop is not in LCSSA form after the +; transform. target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" @@ -50,3 +54,24 @@ if.end.7: ; preds = %if.end if.end.8: ; preds = %if.end.7 br label %for.cond } + +define void @test_01() { +entry: + br label %for.cond + +for.cond.loopexit: ; preds = %while.cond + %inc41.lcssa = phi i16 [ %inc41, %while.cond ] + br label %for.cond + +for.cond: ; preds = %for.cond.loopexit, %entry + %inc41.lcssa3 = phi i16 [ %inc41.lcssa, %for.cond.loopexit ], [ undef, %entry ] + br label %while.cond + +while.cond: ; preds = %while.body, %for.cond + %inc41 = phi i16 [ %inc4, %while.body ], [ %inc41.lcssa3, %for.cond ] + br i1 true, label %while.body, label %for.cond.loopexit + +while.body: ; preds = %while.cond + %inc4 = add nsw i16 %inc41, 1 + br label %while.cond +} |