From 1e87413d956bc62b5c712ca715775fbebe83a4ea Mon Sep 17 00:00:00 2001 From: Max Kazantsev Date: Fri, 25 Jan 2019 11:47:16 +0000 Subject: [PATCH] [NFC] One more crashing test on LoopSimplifyCFG git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@352194 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../LoopSimplifyCFG/constant-fold-branch.ll | 116 ++++++++++++++++++ 1 file changed, 116 insertions(+) diff --git a/test/Transforms/LoopSimplifyCFG/constant-fold-branch.ll b/test/Transforms/LoopSimplifyCFG/constant-fold-branch.ll index 25d6f2bbdb2..353a1c0e818 100644 --- a/test/Transforms/LoopSimplifyCFG/constant-fold-branch.ll +++ b/test/Transforms/LoopSimplifyCFG/constant-fold-branch.ll @@ -1,4 +1,5 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py +; XFAIL: * ; REQUIRES: asserts ; RUN: opt -S -enable-loop-simplifycfg-term-folding=true -loop-simplifycfg -debug-only=loop-simplifycfg -verify-loop-info -verify-dom-info -verify-loop-lcssa 2>&1 < %s | FileCheck %s ; RUN: opt -S -enable-loop-simplifycfg-term-folding=true -passes='require,loop(simplify-cfg)' -debug-only=loop-simplifycfg -verify-loop-info -verify-dom-info -verify-loop-lcssa 2>&1 < %s | FileCheck %s @@ -2581,3 +2582,118 @@ latch: exit: ret i32 %result } + +define void @test_crash_01() { +bb: + br label %bb1 + +bb1: ; preds = %bb + br i1 undef, label %bb17, label %bb2 + +bb2: ; preds = %bb1 + br label %bb3 + +bb3: ; preds = %bb6, %bb2 + br label %bb4 + +bb4: ; preds = %bb3 + switch i32 0, label %bb5 [ + i32 1, label %bb19 + i32 2, label %bb18 + ] + +bb5: ; preds = %bb4 + switch i32 undef, label %bb16 [ + i32 0, label %bb15 + i32 1, label %bb14 + i32 2, label %bb13 + i32 3, label %bb12 + i32 4, label %bb11 + i32 5, label %bb8 + i32 6, label %bb10 + i32 7, label %bb9 + i32 8, label %bb7 + ] + +bb6: ; preds = %bb29, %bb18 + br label %bb3 + +bb7: ; preds = %bb5 + unreachable + +bb8: ; preds = %bb11, %bb5 + switch i32 undef, label %bb28 [ + i32 0, label %bb27 + i32 1, label %bb26 + i32 2, label %bb23 + i32 3, label %bb24 + i32 4, label %bb25 + i32 5, label %bb29 + i32 6, label %bb22 + i32 7, label %bb20 + i32 8, label %bb21 + ] + +bb9: ; preds = %bb5 + unreachable + +bb10: ; preds = %bb5 + unreachable + +bb11: ; preds = %bb5 + br label %bb8 + +bb12: ; preds = %bb5 + unreachable + +bb13: ; preds = %bb5 + unreachable + +bb14: ; preds = %bb5 + unreachable + +bb15: ; preds = %bb5 + unreachable + +bb16: ; preds = %bb5 + unreachable + +bb17: ; preds = %bb1 + ret void + +bb18: ; preds = %bb4 + br label %bb6 + +bb19: ; preds = %bb4 + ret void + +bb20: ; preds = %bb8 + unreachable + +bb21: ; preds = %bb8 + unreachable + +bb22: ; preds = %bb8 + unreachable + +bb23: ; preds = %bb8 + unreachable + +bb24: ; preds = %bb8 + unreachable + +bb25: ; preds = %bb8 + unreachable + +bb26: ; preds = %bb8 + unreachable + +bb27: ; preds = %bb8 + unreachable + +bb28: ; preds = %bb8 + unreachable + +bb29: ; preds = %bb8 + br label %bb6 +} -- 2.50.1