23 lines · plain
1; RUN: opt -passes="loop-mssa(simple-loop-unswitch)" -enable-nontrivial-unswitch -verify-memoryssa -S < %s | FileCheck %s2; REQUIRES: asserts3 4; CHECK-LABEL: @c5define dso_local void @c(i32 signext %d, i1 %arg) local_unnamed_addr {6entry:7 br i1 %arg, label %while.end, label %while.body.lr.ph8 9while.body.lr.ph: ; preds = %entry10 %tobool1 = icmp ne i32 %d, 011 br label %while.body12 13while.body: ; preds = %while.body, %while.body.lr.ph14 %call = tail call signext i32 @e()15 %0 = and i1 %tobool1, undef16 br i1 %0, label %while.body, label %while.end17 18while.end: ; preds = %while.body, %entry19 ret void20}21 22declare signext i32 @e(...) local_unnamed_addr23