brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.0 KiB · 83be3de Raw
36 lines · plain
1; RUN: opt -passes=loop-simplify -S < %s | FileCheck %s2 3; LoopSimplify shouldn't split loop backedges that use indirectbr.4 5; CHECK: bb1:                                              ; preds = %bb5, %bb6; CHECK-NEXT: indirectbr7 8; CHECK: bb5:                                              ; preds = %bb19; CHECK-NEXT: br label %bb1{{$}}10 11define void @foo(ptr %p) nounwind {12bb:13  br label %bb114 15bb1:                                              ; preds = %bb5, %bb1, %bb16  indirectbr ptr %p, [label %bb6, label %bb7, label %bb1, label %bb2, label %bb3, label %bb5, label %bb4]17 18bb2:                                              ; preds = %bb119  ret void20 21bb3:                                              ; preds = %bb122  ret void23 24bb4:                                              ; preds = %bb125  ret void26 27bb5:                                              ; preds = %bb128  br label %bb129 30bb6:                                              ; preds = %bb131  ret void32 33bb7:                                              ; preds = %bb134  ret void35}36