1; RUN: opt < %s -inline -S | FileCheck %s 2; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s 3 4declare i1 @extern() 5 6define internal i32 @test() { 7; CHECK-NOT: define .* @test() 8entry: 9 %n = call i1 @extern() 10 br i1 %n, label %r, label %u 11 12r: 13 ret i32 0 14 15u: 16 unreachable 17} 18 19define i32 @caller() { 20; CHECK-LABEL: define i32 @caller() 21entry: 22 %X = call i32 @test() nounwind 23; CHECK-NOT: call i32 @test() 24; CHECK: call i1 @extern() #0 25; CHECK: br i1 %{{.*}}, label %[[R:.*]], label %[[U:.*]] 26 27; CHECK: [[U]]: 28; CHECK: unreachable 29 30; CHECK: [[R]]: 31 ret i32 %X 32; CHECK: ret i32 0 33} 34 35; CHECK: attributes #0 = { nounwind } 36