brintos

brintos / llvm-project-archived public Read only

0
0
Text · 585 B · ee7540e Raw
25 lines · plain
1; RUN: opt < %s -passes=loop-deletion -S | FileCheck %s2 3; Checking that possible users of instruction from the loop in4; unreachable blocks are handled.5 6define i64 @foo() {7entry:8  br label %invloop9; CHECK-LABEL-NOT: invloop10invloop:11  %indvar1 = phi i64 [ 3, %entry ], [ %indvar2, %invloop_iter ]12  %check = icmp ult i64 %indvar1, 40013  br i1 %check, label %invloop_iter, label %loopexit14invloop_iter:15  %indvar2 = add i64 %indvar1, 116  %baddef = add i64 0, 017  br label %invloop18loopexit:19  ret i64 020deadcode:21; CHECK-LABEL: deadcode22; CHECK: ret i64 poison23  ret i64 %baddef24}25