41 lines · plain
1; RUN: opt -passes=licm -S %s | FileCheck %s2target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"3target triple = "x86_64-unknown-linux-gnu"4 5; CHECK-LABEL: @d()6define dso_local void @d() {7entry:8 br label %header9 10header:11 store i32 1, ptr null, align 412 br i1 true, label %cleanup53, label %body13 14body:15 br i1 undef, label %cleanup31, label %for.cond1116 17for.cond11: ; Needs branch as is18 br i1 undef, label %unreachable, label %latch19 20cleanup31:21 br label %unreachable22 23deadblock:24 br i1 undef, label %unreachable, label %deadblock25 26cleanup53:27 %val = load i32, ptr null, align 428 %cmpv = icmp eq i32 %val, 029 br i1 %cmpv, label %cleanup63, label %latch30 31latch:32 br label %header33 34cleanup63:35 ret void36 37unreachable:38 unreachable39}40 41