blob: bf085f935019c2575436d5f71dde448e82bf15f1 [file] [log] [blame]
// RUN: %target-swift-frontend -emit-ir %s | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-%target-runtime
// REQUIRES: executable_test
// REQUIRES: CPU=x86_64
sil_stage canonical
import Builtin
import Swift
class C {
required init()
}
// CHECK: [[C:%C6vtable1C]] = type <{ %swift.refcounted }>
sil @_TFC6vtable1CCfMS0_FT_S0_ : $@convention(method) (@thick C.Type) -> @owned C
sil @_TFC6vtable1CcfMS0_FT_S0_ : $@convention(method) (@owned C) -> @owned C
sil @_TFC6vtable1Cd : $@convention(method) (@owned C) -> @owned Builtin.NativeObject
sil @_TFC6vtable1CD : $@convention(method) (@owned C) -> ()
// CHECK-objc: @_TMfC6vtable1C = internal global [[C_METADATA_T:<{.*\* }>]] <{
// CHECK-objc: void ([[C]]*)* @_TFC6vtable1CD,
// CHECK-objc: i8** @_TWVBo,
// CHECK-objc: i64 ptrtoint (%objc_class* @_TMmC6vtable1C to i64),
// CHECK-objc: %objc_class* @"OBJC_CLASS_$_SwiftObject",
// CHECK-objc: %swift.opaque* @_objc_empty_cache,
// CHECK-objc: %swift.opaque* null,
// CHECK-objc: i64 add (i64 ptrtoint ({ i32, i32, i32, i32, i8*, i8*, i8*, i8*, i8*, i8*, i8* }* @_DATA__TtC6vtable1C to i64), i64 1),
// CHECK-objc: i32 3, i32 0, i32 16, i16 7, i16 0,
// CHECK-objc: i32 112, i32 16,
// CHECK-objc: @_TMnC6vtable1C
// CHECK-objc: [[C]]* (%swift.type*)* @_TFC6vtable1CCfMS0_FT_S0_,
// CHECK-objc: [[C]]* ([[C]]*)* @_TFC6vtable1CcfMS0_FT_S0_
// CHECK-objc: }>
// CHECK-native: @_TMfC6vtable1C = internal global [[C_METADATA_T:<{.*\* }>]] <{
// CHECK-native: void ([[C]]*)* @_TFC6vtable1CD,
// CHECK-native: i8** @_TWVBo,
// CHECK-native: i64 0,
// CHECK-native: %swift.type* null,
// CHECK-native: %swift.opaque* null,
// CHECK-native: %swift.opaque* null,
// CHECK-native: i64 1,
// CHECK-native: i32 3, i32 0, i32 16, i16 7, i16 0,
// CHECK-native: i32 112, i32 16,
// CHECK-native: @_TMnC6vtable1C
// CHECK-native: [[C]]* (%swift.type*)* @_TFC6vtable1CCfMS0_FT_S0_,
// CHECK-native: [[C]]* ([[C]]*)* @_TFC6vtable1CcfMS0_FT_S0_
// CHECK-native: }>
sil_vtable C {
#C.init!allocator.1: _TFC6vtable1CCfMS0_FT_S0_
#C.init!initializer.1: _TFC6vtable1CcfMS0_FT_S0_
}