// RUN: %target-sil-opt -enable-sil-verify-all %s -always-inline | %FileCheck %s sil @doSomething1 : $@convention(thin) () -> () sil @doSomething2 : $@convention(thin) () -> () sil @doSomething3 : $@convention(thin) () -> () sil [ossa] [always_inline] @do_inline_this : $@convention(thin) () -> () { bb0: %d1 = function_ref @doSomething1 : $@convention(thin) () -> () apply %d1() : $@convention(thin) () -> () %9999 = tuple() return %9999 : $() } sil [ossa] @donot_inline_this : $@convention(thin) () -> () { bb0: %d1 = function_ref @doSomething2 : $@convention(thin) () -> () apply %d1() : $@convention(thin) () -> () %9999 = tuple() return %9999 : $() } sil [ossa] @empty_function : $@convention(thin) () -> () { bb0: %9999 = tuple() return %9999 : $() } // CHECK-LABEL: sil [ossa] @caller : $@convention(thin) () -> () { // CHECK-NOT: function_ref @do_inline_this : $@convention(thin) () -> () // CHECK: function_ref @donot_inline_this : $@convention(thin) () -> () // CHECK: function_ref @empty_function : $@convention(thin) () -> () // CHECK: } // end sil function 'caller' sil [ossa] @caller : $@convention(thin) () -> () { bb0: %c1 = function_ref @do_inline_this : $@convention(thin) () -> () apply %c1() : $@convention(thin) () -> () %c2 = function_ref @donot_inline_this : $@convention(thin) () -> () apply %c2() : $@convention(thin) () -> () %c3 = function_ref @empty_function : $@convention(thin) () -> () apply %c3() : $@convention(thin) () -> () %9999 = tuple() return %9999 : $() }