| // RUN: %target-swift-frontend -Xllvm -new-mangling-for-tests -emit-silgen -module-name main %s | %FileCheck %s |
| internal func internalFunc() {} |
| |
| // CHECK-LABEL: sil @_T04main3fooyyF |
| public func foo() { |
| // CHECK-LABEL: sil shared [always_inline] @_T04main3foo{{[_0-9a-zA-Z]*}}zim |
| @inline(__always) |
| func zim() { |
| // CHECK-LABEL: sil shared @_T04main3fooyyF3zimL_yyF4zangL_yyF |
| func zang() { internalFunc() } |
| internalFunc() |
| } |
| |
| // CHECK-LABEL: sil shared @_T04main3foo{{[_0-9a-zA-Z]*}}U_ |
| let zung = { |
| // CHECK-LABEL: sil shared [always_inline] @_T04main3fooyyFyycfU_7zippityL_yyF |
| @inline(__always) |
| func zippity() { internalFunc() } |
| internalFunc() |
| } |
| } |
| |
| // CHECK-LABEL: sil hidden [always_inline] @_T04main3baryyF |
| @inline(__always) |
| internal func bar() { |
| // CHECK-LABEL: sil shared [always_inline] @_T04main3baryyF3zimL_yyF |
| @inline(__always) |
| func zim() { |
| // CHECK-LABEL: sil shared @_T04main3baryyF3zimL_yyF4zangL_yyF |
| func zang() { internalFunc() } |
| internalFunc() |
| } |
| |
| // CHECK-LABEL: sil shared @_T04main3bar{{[_0-9a-zA-Z]*}}U_ |
| let zung = { |
| // CHECK-LABEL: sil shared [always_inline] @_T04main3baryyFyycfU_7zippityL_yyF |
| @inline(__always) |
| func zippity() { internalFunc() } |
| internalFunc() |
| } |
| } |
| |
| public func publicFunc() {} |
| |
| // CHECK-LABEL: sil [fragile] [always_inline] @_T04main3basyyF |
| @inline(__always) |
| public func bas() { |
| // CHECK-LABEL: sil shared [fragile] [always_inline] @_T04main3basyyF3zimL_yyF |
| @inline(__always) |
| func zim() { |
| // CHECK-LABEL: sil shared [fragile] @_T04main3basyyF3zimL_yyF4zangL_yyF |
| func zang() { publicFunc() } |
| publicFunc() |
| } |
| |
| // CHECK-LABEL: sil shared [fragile] @_T04main3bas{{[_0-9a-zA-Z]*}}U_ |
| let zung = { |
| // CHECK-LABEL: sil shared [fragile] [always_inline] @_T04main3basyyFyycfU_7zippityL_yyF |
| @inline(__always) |
| func zippity() { publicFunc() } |
| publicFunc() |
| } |
| } |