26 lines · plain
1; RUN: opt < %s -S -passes=loop-unroll -unroll-count=2 | FileCheck %s2; Checks that "llvm.loop.unroll.disable" is set when3; unroll with count set by user has been applied.4;5; CHECK-LABEL: @foo(6; CHECK: llvm.loop.unroll.disable7 8define void @foo(ptr nocapture %a) {9entry:10 br label %for.body11 12for.body: ; preds = %for.body, %entry13 %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ]14 %arrayidx = getelementptr inbounds i32, ptr %a, i64 %indvars.iv15 %0 = load i32, ptr %arrayidx, align 416 %inc = add nsw i32 %0, 117 store i32 %inc, ptr %arrayidx, align 418 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 119 %exitcond = icmp eq i64 %indvars.iv.next, 6420 br i1 %exitcond, label %for.end, label %for.body21 22for.end: ; preds = %for.body23 ret void24}25 26