brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 1bc831b Raw
56 lines · plain
1; RUN: opt -passes="verify<scalar-evolution>,lcssa,verify<scalar-evolution>" -verify-scev-strict -S -disable-output %s2 3; The first SCEV verification is required because it queries SCEV and populates4; SCEV caches. Second SCEV verification checks if the caches are in valid state.5 6; Check that the second SCEV verification doesn't fail.7define void @test(ptr %arg, ptr %arg1, i1 %arg2, i1 %arg3) {8bb:9  br label %bb610 11bb5:12  br label %bb613 14bb6:15  br label %bb716 17bb7:18  %tmp = load i32, ptr %arg19  %tmp8 = load i32, ptr %arg120  %tmp9 = add i32 %tmp8, %tmp21  %tmp10 = icmp sgt i32 %tmp9, %tmp22  br i1 %tmp10, label %bb11, label %bb1723 24bb11:25  br i1 %arg3, label %bb12, label %bb1426 27bb12:28  br label %bb1329 30bb13:31  br label %bb1732 33bb14:34  br label %bb1535 36bb15:37  %tmp16 = add nsw i32 %tmp, 138  ret void39 40bb17:41  %tmp18 = phi i32 [ 0, %bb7 ], [ %tmp8, %bb13 ]42  br i1 %arg2, label %bb24, label %bb1943 44bb19:45  br label %bb2046 47bb20:48  %tmp21 = phi i32 [ %tmp22, %bb20 ], [ 0, %bb19 ]49  %tmp22 = add nuw nsw i32 %tmp21, 150  %tmp23 = icmp slt i32 %tmp22, %tmp1851  br i1 %tmp23, label %bb20, label %bb552 53bb24:54  ret void55}56