[flang] Fix length handling in character kind implicit conversion (#74586)
[llvm-project.git] / polly / test / CodeGen / region_exiting-domtree.ll
blob05983da0a3e30c1bf5d2be7beefd884ad5fb2db6
1 ; RUN: opt %loadPolly -polly-codegen -verify-dom-info -disable-output < %s
3 ; Verify that the DominatorTree is preserved correctly for the inserted
4 ; %polly.stmt.exit.exit block, which serves as new exit block for the generated
5 ; subregion. In particulat, it must be dominated by %polly.stmt.subregion.enter,
6 ; the generated subregion's entry block.
8 define void @func(i32 %n, ptr noalias nonnull %A) {
9 entry:
10   br label %loop
12 loop:
13   %i = phi i32 [0, %entry], [%i.inc, %loop.inc]
14   %i.cmp = icmp slt i32 %i, %n
15   br i1 %i.cmp, label %body, label %return
17 body:
18   %skipcond = icmp slt i32 %i, 5
19   br i1 %skipcond, label %subregion.enter, label %subregion.skip
21 subregion.skip:
22   br label %exit
24 subregion.enter:
25   %sqr = mul i32 %i, %i
26   %cond = icmp eq i32 %sqr, 0
27   store i32 %i, ptr %A
28   br i1 %cond, label %subregion.true, label %subregion.false
30 subregion.true:
31   br label %exit
33 subregion.false:
34   br label %exit
36 exit:
37   br label %loop.inc
39 loop.inc:
40   %i.inc = add nuw nsw i32 %i, 1
41   br label %loop
43 return:
44   ret void