Files
swift-mirror/test/IRGen/class_with_stub_initializers.swift
Joe Groff 42c71b7972 Don't mangle directness into type metadata symbols.
Anywhere we can't directly address type metadata in Swift, we've found we need a function call. Directness isn't useful here.

Swift SVN r32626
2015-10-12 17:22:40 +00:00

19 lines
585 B
Swift

// RUN: rm -rf %t && mkdir %t
// RUN: %build-irgen-test-overlays
// RUN: %target-swift-frontend(mock-sdk: -sdk %S/Inputs -I %t) %s -emit-ir | FileCheck %s
// REQUIRES: objc_interop
import Foundation
// CHECK: @_TM[[FOO:C28class_with_stub_initializers3Foo]] =
// -- The init() stub should get no vtable entry
// CHECK-NOT: %[[FOO]]* (%[[FOO]]*)*
// CHECK: %[[FOO]]* (i64, %[[FOO]]*)*
// -- The init() stub should get no vtable entry
// CHECK-NOT: %[[FOO]]* (%[[FOO]]*)*
// CHECK: {{^(@|define)}}
class Foo: NSObject {
init(x: Int64) { super.init() }
}