1*79d0de2aSpaperchalice; RUN: llc -mtriple=x86_64-linux-gnu -stop-after=x86-isel %s -o - | llc --passes='print<machine-loops>' -x mir -o - 2>&1 | FileCheck %s 2*79d0de2aSpaperchalice 3*79d0de2aSpaperchalice; Function Attrs: noinline nounwind optnone ssp uwtable 4*79d0de2aSpaperchalicedefine i32 @foo(i32 noundef %0) #0 { 5*79d0de2aSpaperchalice %2 = alloca i32, align 4 6*79d0de2aSpaperchalice %3 = alloca i32, align 4 7*79d0de2aSpaperchalice %4 = alloca i32, align 4 8*79d0de2aSpaperchalice store i32 %0, ptr %2, align 4 9*79d0de2aSpaperchalice store i32 0, ptr %3, align 4 10*79d0de2aSpaperchalice store i32 0, ptr %4, align 4 11*79d0de2aSpaperchalice br label %5 12*79d0de2aSpaperchalice 13*79d0de2aSpaperchalice5: ; preds = %13, %1 14*79d0de2aSpaperchalice %6 = load i32, ptr %4, align 4 15*79d0de2aSpaperchalice %7 = load i32, ptr %2, align 4 16*79d0de2aSpaperchalice %8 = icmp ne i32 %6, %7 17*79d0de2aSpaperchalice br i1 %8, label %9, label %16 18*79d0de2aSpaperchalice 19*79d0de2aSpaperchalice9: ; preds = %5 20*79d0de2aSpaperchalice %10 = load i32, ptr %4, align 4 21*79d0de2aSpaperchalice %11 = load i32, ptr %3, align 4 22*79d0de2aSpaperchalice %12 = add nsw i32 %11, %10 23*79d0de2aSpaperchalice store i32 %12, ptr %3, align 4 24*79d0de2aSpaperchalice br label %13 25*79d0de2aSpaperchalice 26*79d0de2aSpaperchalice13: ; preds = %9 27*79d0de2aSpaperchalice %14 = load i32, ptr %4, align 4 28*79d0de2aSpaperchalice %15 = add nsw i32 %14, 1 29*79d0de2aSpaperchalice store i32 %15, ptr %4, align 4 30*79d0de2aSpaperchalice br label %5, !llvm.loop !1 31*79d0de2aSpaperchalice 32*79d0de2aSpaperchalice16: ; preds = %5 33*79d0de2aSpaperchalice %17 = load i32, ptr %3, align 4 34*79d0de2aSpaperchalice %18 = load i32, ptr %2, align 4 35*79d0de2aSpaperchalice %19 = add nsw i32 %17, %18 36*79d0de2aSpaperchalice ret i32 %19 37*79d0de2aSpaperchalice} 38*79d0de2aSpaperchalice 39*79d0de2aSpaperchalice!0 = distinct !{!0, !1} 40*79d0de2aSpaperchalice!1 = !{!"llvm.loop.mustprogress"} 41*79d0de2aSpaperchalice 42*79d0de2aSpaperchalice; CHECK: Machine loop info for machine function 'foo': 43*79d0de2aSpaperchalice; CHECK: Loop at depth 1 containing: %bb.1<header><exiting>,%bb.2,%bb.3<latch> 44