; RUN: opt -passes=inline,attributor-cgscc,tailcallelim -S %s | FileCheck %s | |
; | |
; CHECK: define void @foo() | |
; CHECK: declare i32 @baz() | |
; CHECK-NOT: void @goo() | |
; CHECK-NOT: void @bar() | |
define void @foo() { | |
call fastcc void @bar() | |
ret void | |
} | |
define internal fastcc void @goo() { | |
call fastcc void @bar() | |
ret void | |
} | |
define internal fastcc void @bar() { | |
%call = call i32 @baz() | |
%cond = icmp eq i32 %call, 0 | |
br i1 %cond, label %if.then, label %if.end | |
if.then: | |
call fastcc void @goo() | |
br label %if.end | |
if.end: | |
ret void | |
} | |
declare i32 @baz() |