brintos

brintos / llvm-project-archived public Read only

0
0
Text · 765 B · 7faff4d Raw
26 lines · plain
1; RUN: opt -passes='simple-loop-unswitch<no-trivial>' -S < %s | FileCheck %s --check-prefix=NOTRIVIAL2; RUN: opt -passes='simple-loop-unswitch' -S < %s | FileCheck %s --check-prefix=TRIVIAL3; RUN: opt -passes='simple-loop-unswitch<trivial>' -S < %s | FileCheck %s --check-prefix=TRIVIAL4 5declare void @some_func() noreturn6 7; NOTRIVIAL-NOT: split8; TRIVIAL: split9define i32 @test1(ptr %var, i1 %cond1, i1 %cond2) {10entry:11  br label %loop_begin12 13loop_begin:14  br i1 %cond1, label %continue, label %loop_exit	; first trivial condition15 16continue:17  %var_val = load i32, ptr %var18  br i1 %cond2, label %do_something, label %loop_exit	; second trivial condition19 20do_something:21  call void @some_func() noreturn nounwind22  br label %loop_begin23 24loop_exit:25  ret i32 026}