| ; RUN: opt -passes=inline -inline-threshold=10 -S < %s | FileCheck %s | |
| declare void @foo() | |
| ; CHECK-LABEL: @caller | |
| ; CHECK-NOT: %res = call i64 @callee(ptr %p) | |
| define i64 @caller(ptr %p) { | |
| %res = call i64 @callee(ptr %p) | |
| ret i64 %res | |
| } | |
| define i64 @callee(ptr %p) { | |
| %null_check = icmp eq ptr %p, null | |
| br i1 %null_check, label %is_null, label %non_null, !make.implicit !0 | |
| is_null: | |
| call void @foo() | |
| ret i64 0 | |
| non_null: | |
| ret i64 1 | |
| } | |
| !0 = !{} |