1 ; RUN: llc -O2 %s -o - | FileCheck %s
2 target datalayout = "E-m:e-i64:64-n32:64"
3 target triple = "powerpc64-unknown-linux-gnu"
5 ; Function Attrs: nounwind
6 declare void @llvm.lifetime.end.p0(i64, ptr nocapture) #0
13 ; Function Attrs: nounwind
14 ; CHECK-LABEL: tail_dup_fallthrough_with_branch
15 ; CHECK: # %bb.{{[0-9]+}}: # %entry
16 ; CHECK-NOT: # %{{[-_a-zA-Z0-9]+}}
17 ; CHECK: # %bb.{{[0-9]+}}: # %entry
18 ; CHECK-NOT: # %{{[-_a-zA-Z0-9]+}}
19 ; CHECK: # %bb.{{[0-9]+}}: # %sw.0
20 ; CHECK-NOT: # %{{[-_a-zA-Z0-9]+}}
22 ; CHECK-NOT: # %{{[-_a-zA-Z0-9]+}}
23 ; CHECK: # %sw.default
24 ; CHECK-NOT: # %{{[-_a-zA-Z0-9]+}}
25 ; CHECK: # %bb.{{[0-9]+}}: # %if.then
26 ; CHECK-NOT: # %{{[-_a-zA-Z0-9]+}}
28 ; CHECK-NOT: # %{{[-_a-zA-Z0-9]+}}
30 define fastcc void @tail_dup_fallthrough_with_branch(i32 %a, i1 %b) unnamed_addr #0 {
32 switch i32 %a, label %sw.default [
37 sw.0: ; preds = %entry
41 sw.1: ; preds = %entry
45 sw.default: ; preds = %entry
46 br i1 %b, label %if.then, label %if.else
48 if.then: ; preds = %sw.default
52 if.else: ; preds = %sw.default
56 dup1: ; preds = %sw.0, %sw.1
57 call void @llvm.lifetime.end.p0(i64 8, ptr nonnull undef) #0
60 dup2: ; preds = %if.then, %if.else
61 call void @llvm.lifetime.end.p0(i64 8, ptr nonnull undef) #0
65 attributes #0 = { nounwind }