brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.0 KiB · 16b265c Raw
46 lines · plain
1; RUN: opt %loadNPMPolly '-passes=polly<no-default-opts>' -verify-dom-info -disable-output < %s2 3; Verify that the DominatorTree is preserved correctly for the inserted4; %polly.stmt.exit.exit block, which serves as new exit block for the generated5; subregion. In particulat, it must be dominated by %polly.stmt.subregion.enter,6; the generated subregion's entry block.7 8define void @func(i32 %n, ptr noalias nonnull %A) {9entry:10  br label %loop11 12loop:13  %i = phi i32 [0, %entry], [%i.inc, %loop.inc]14  %i.cmp = icmp slt i32 %i, %n15  br i1 %i.cmp, label %body, label %return16 17body:18  %skipcond = icmp slt i32 %i, 519  br i1 %skipcond, label %subregion.enter, label %subregion.skip20 21subregion.skip:22  br label %exit23 24subregion.enter:25  %sqr = mul i32 %i, %i26  %cond = icmp eq i32 %sqr, 027  store i32 %i, ptr %A28  br i1 %cond, label %subregion.true, label %subregion.false29 30subregion.true:31  br label %exit32 33subregion.false:34  br label %exit35 36exit:37  br label %loop.inc38 39loop.inc:40  %i.inc = add nuw nsw i32 %i, 141  br label %loop42 43return:44  ret void45}46