brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · ff35989 Raw
51 lines · plain
1; RUN: opt -passes=gvn-hoist -S < %s | FileCheck %s2; REQUIRES: asserts3%struct.job_pool.6.7 = type { i32 }4 5; CHECK-LABEL: @f(i1 %arg)6define dso_local void @f(i1 %arg) {7entry:8  br label %for.cond9 10for.cond:                                         ; preds = %for.end, %entry11  br label %for.body12 13for.body:                                         ; preds = %for.cond14  br label %if.end15 16if.then:                                          ; No predecessors!17  br label %if.end18 19if.end:                                           ; preds = %if.then, %for.body20  br i1 false, label %for.body12.lr.ph, label %for.end21 22for.body12.lr.ph:                                 ; preds = %if.end23  br label %for.body1224 25for.body12:                                       ; preds = %if.end40, %for.body12.lr.ph26  br label %if.then2327 28if.then23:                                        ; preds = %for.body1229  br i1 %arg, label %if.then24, label %if.else30 31if.then24:                                        ; preds = %if.then2332  %0 = load ptr, ptr undef, align 833  br label %if.end4034 35if.else:                                          ; preds = %if.then2336  %1 = load ptr, ptr undef, align 837  br label %if.end4038 39if.end40:                                         ; preds = %if.else, %if.then2440  br i1 false, label %for.body12, label %for.cond9.for.end_crit_edge41 42for.cond9.for.end_crit_edge:                      ; preds = %if.end4043  br label %for.end44 45for.end:                                          ; preds = %for.cond9.for.end_crit_edge, %if.end46  br i1 true, label %if.then45, label %for.cond47 48if.then45:                                        ; preds = %for.end49  ret void50}51